Tag Cloud Fails with Text Based Browsers

7 posts, 0 answers
  1. rootberg
    rootberg avatar
    38 posts
    Member since:
    Oct 2012

    Posted 06 Aug 2010 Link to this post

    I didn't want to put this in a support ticket as it isn't a big deal and isn't a show stopper as I am sort of pushing the control to it's limits (i think) but I thought it should be noted somewhere... So here it goes:
     
    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:

    [ArgumentOutOfRangeException: Specified argument was out of the range of valid values. Parameter name: value]
       System.Web.UI.WebControls.Unit..ctor(String value, CultureInfo culture, Unit Type defaultType) +8671148
       System.Web.UI.WebControls.FontUnit..ctor(String value, CultureInfo culture) +215
       System.Web.UI.Html32TextWriter.ConvertToHtmlFontSize(String value) +71
       System.Web.UI.Html32TextWriter.OnStyleAttributeRender(String name, String value, HtmlTextWriterStyle key) +98
       System.Web.UI.HtmlTextWriter.FilterAttributes() +86
       System.Web.UI.HtmlTextWriter.RenderBeginTag(HtmlTextWriterTag tagKey) +8647477
       System.Web.UI.Html32TextWriter.RenderBeginTag(HtmlTextWriterTag tagKey) +436
       Telerik.Web.UI.RadTagCloud.RenderItems(HtmlTextWriter writer, RadTagCloudItemCollection items) +261
       Telerik.Web.UI.RadTagCloud.RenderContents(HtmlTextWriter writer) +188
       System.Web.UI.WebControls.WebControl.Render(HtmlTextWriter writer) +32
       Telerik.Web.UI.RadDataBoundControl.Render(HtmlTextWriter writer) +63
       System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter) +27
       System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter) +99
       System.Web.UI.Control.RenderControl(HtmlTextWriter writer) +25
       System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +134
       System.Web.UI.Control.RenderChildren(HtmlTextWriter writer) +19
       System.Web.UI.HtmlControls.HtmlForm.RenderChildren(HtmlTextWriter writer) +163
       System.Web.UI.HtmlControls.HtmlContainerControl.Render(HtmlTextWriter writer) +32
       System.Web.UI.HtmlControls.HtmlForm.Render(HtmlTextWriter output) +51
       System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter) +27
       System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter) +99
       System.Web.UI.HtmlControls.HtmlForm.RenderControl(HtmlTextWriter writer) +40
       System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +134
       System.Web.UI.Control.RenderChildren(HtmlTextWriter writer) +19
       System.Web.UI.Page.Render(HtmlTextWriter writer) +29
       System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter) +27
       System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter) +99
       System.Web.UI.Control.RenderControl(HtmlTextWriter writer) +25
       Telerik.Web.UI.RadAjaxControl.RenderPageInAjaxMode(HtmlTextWriter writer, Control page) +596
       System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +256
       System.Web.UI.Control.RenderChildren(HtmlTextWriter writer) +19
       System.Web.UI.Page.Render(HtmlTextWriter writer) +29
       System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter) +27
       System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter) +99
       System.Web.UI.Control.RenderControl(HtmlTextWriter writer) +25
       System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1266

    I also attempted to use Google's webmaster tools to test the page with GoogleBot, and the result was "Unreachable".
  2. Rumen
    Admin
    Rumen avatar
    12851 posts

    Posted 10 Aug 2010 Link to this post

    Hi Rootberg,

    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
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
  3. UI for ASP.NET Ajax is Ready for VS 2017
  4. rootberg
    rootberg avatar
    38 posts
    Member since:
    Oct 2012

    Posted 10 Aug 2010 Link to this post

    My issue isn't the text browser per se, it is more that the page will fail when hit by a bot engine like GoogleBot, and then the page will not be indexed.
  5. Pero
    Admin
    Pero avatar
    1156 posts

    Posted 16 Aug 2010 Link to this post

    Hello Rootberg,

    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
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
  6. Fit2Page
    Fit2Page avatar
    345 posts
    Member since:
    Feb 2007

    Posted 11 Oct 2010 Link to this post

    Hi,

    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
  7. Pero
    Admin
    Pero avatar
    1156 posts

    Posted 13 Oct 2010 Link to this post

    Hello 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
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
  8. Fit2Page
    Fit2Page avatar
    345 posts
    Member since:
    Feb 2007

    Posted 14 Oct 2010 Link to this post

    Hi Pero,

    The UICulture definitely was the problem.

    Marc
Back to Top
UI for ASP.NET Ajax is Ready for VS 2017