I was playing around with the new tag cloud control and I came across a strange problem. When I create a tag cloud with a large quantity of items, the page renders fine in any image based browser, but when I attempt to browse the page with a text based browser like Lynx or hit the page with GoogleBot, the page errors out with an exception.
In my test scenario, I grabbed a list of Chicago neighborhoods (yes I know 216 items is a little silly for a tag cloud, but as I said I am pushing the control to its limits), and stuck them into the tag cloud, giving each a url and weight.
I then tested the page in all the popular browsers( IE 8, F.F., Safari, Chrome and Opera) and had no problems with the page and it rendered properly.
I then attempted to view the page with Lynx and I got the following exception:
I also attempted to use Google's webmaster tools to test the page with GoogleBot, and the result was "Unreachable".
6 Answers, 1 is accepted
RadTagCloud does not offer out-of-the box support for text based browsers. You can find a list of the supported browsers in the Browser Support article.
Nevertheless, we will research this scenario and if possible we will handle the error.
Kind regards,
Rumen
the Telerik team

It seems like this is a server-side exception that can occur not only under Lynx browser, but also under any other browser - IE, Firefox, Chrome. I think the issue might be possibly related to one of the following:
- The CultureInfo is different when viewing the page with Lynx browser, and the font-side is not is not correctly converted from Unit to string.
- The weight of the font-size is not calculated correctly, and as a result an exception is thrown.
I tested our first look demo of the TagCloud with the Lynx browser from the following web-site: http://www.vordweb.co.uk/standards/download_lynx.htm, and did not experience any problems. Please find attached a screenshot of the page viewed in Lynx browser.
Could you please send us the source code of the test page that throws the exception? Also provide detailed steps that we need to follow in order to reproduce the issue.
Regards,
Pero
the Telerik team

I also got errors from the tagcloud.
We placed it to get higher page ranking but googlebot encounters an error:
Bericht: The numeric part ('109,3902') of '109,3902%' cannot be parsed as a numeric part of a Percentage unit.
Stack Trace:
at System.Web.UI.WebControls.Unit..ctor(String value, CultureInfo culture, UnitType defaultType) at System.Web.UI.WebControls.FontUnit..ctor(String value, CultureInfo culture) at System.Web.UI.Html32TextWriter.ConvertToHtmlFontSize(String value) at System.Web.UI.Html32TextWriter.OnStyleAttributeRender(String name, String value, HtmlTextWriterStyle key) at System.Web.UI.HtmlTextWriter.FilterAttributes() at System.Web.UI.HtmlTextWriter.RenderBeginTag(HtmlTextWriterTag tagKey) at System.Web.UI.Html32TextWriter.RenderBeginTag(HtmlTextWriterTag tagKey) at Telerik.Web.UI.RadTagCloud.RenderItems(HtmlTextWriter writer, RadTagCloudItemCollection items) at Telerik.Web.UI.RadTagCloud.RenderContents(HtmlTextWriter writer) at System.Web.UI.WebControls.WebControl.Render(HtmlTextWriter writer) at Telerik.Web.UI.RadDataBoundControl.Render(HtmlTextWriter writer) at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter) at System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter) at System.Web.UI.Control.RenderControl(HtmlTextWriter writer) at ASP.includes_footer_ascx.__Render__control1(HtmlTextWriter __w, Control parameterContainer) in C:\inetpub\wwwroot\Insight\mprise\includes\footer.ascx:line 16 at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) at System.Web.UI.Control.RenderChildren(HtmlTextWriter writer) at System.Web.UI.Control.Render(HtmlTextWriter writer) at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter) at System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter) at System.Web.UI.Control.RenderControl(HtmlTextWriter writer) at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) at System.Web.UI.Control.RenderChildren(HtmlTextWriter writer) at System.Web.UI.HtmlControls.HtmlForm.RenderChildren(HtmlTextWriter writer) at System.Web.UI.HtmlControls.HtmlContainerControl.Render(HtmlTextWriter writer) at System.Web.UI.HtmlControls.HtmlForm.Render(HtmlTextWriter output) at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter) at System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter) at System.Web.UI.HtmlControls.HtmlForm.RenderControl(HtmlTextWriter writer) at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) at System.Web.UI.Control.RenderChildren(HtmlTextWriter writer) at System.Web.UI.Control.Render(HtmlTextWriter writer) at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter) at System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter) at System.Web.UI.Control.RenderControl(HtmlTextWriter writer) at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) at System.Web.UI.Control.RenderChildren(HtmlTextWriter writer) at System.Web.UI.Page.Render(HtmlTextWriter writer) at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter) at System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter) at System.Web.UI.Control.RenderControl(HtmlTextWriter writer) at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
tagcloud programmed like:
<telerik:RadTagCloud ID="RadTagCloud1" runat="server" DataSourceID="SqlDataSource1" DataTextField="term" DataWeightField="score" DataNavigateUrlField="url" Skin="Web20" Sorting="AlphabeticAsc" RenderItemWeight="False" MaxFontSize="150%" MinFontSize="75%"></telerik:RadTagCloud>
##########################################
Is there a solution for this?
Regards,
Marc
I think this problem is related to the fact that the page containing the TagCloud control has UICulture and Culture different than the standard (English) culture. That's why a "comma" instead of "point" is used as a decimal separator.
Please change the UICulture and the Culture of the page to en-US, and see if the problem persists.
We will make sure that UICulture and Culture do not affect the control in the next release.
Sincerely yours,
Pero
the Telerik team

The UICulture definitely was the problem.
Marc