Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


  • MatsStam 50 posts 195 karma points
    Jan 29, 2015 @ 14:25
    MatsStam
    0

    Umbraco 7.2.1 - Forms writing something to disk?

    Hello again :)

    I've got a multilingual site that uses swedish, english, russian and chinese characters.

    I've found out that the macro refuses to load if you try to load the macro on a page with a very long name (specificly on chinese and russian, mayhaps because they use more bytes or something with their characters) it refuses to load the macro on that page.

    I load the macro as such:

    @Umbraco.RenderMacro("umbracoforms.RenderForm", new { FormGuid = Model.FormGuid })

    So when I get to this line in InsertUmbracoForm.cshtml it crashes:

    Html.RenderAction("Render", "UmbracoForms", new {formId = g});

    And the stacktrace is:

       at System.IO.Path.NormalizePath(String path, Boolean fullCheck, Int32 maxPathLength, Boolean expandShortPaths)
       at System.Security.Util.StringExpressionSet.CanonicalizePath(String path, Boolean needFullPath)
       at System.Security.Util.StringExpressionSet.CreateListFromExpressions(String[] str, Boolean needFullPath)
       at System.Security.Permissions.FileIOPermission.AddPathList(FileIOPermissionAccess access, AccessControlActions control, String[] pathListOrig, Boolean checkForDuplicates, Boolean needFullPath, Boolean copyPathList)
       at System.Security.Permissions.FileIOPermission.AddPathList(FileIOPermissionAccess access, String[] pathListOrig, Boolean checkForDuplicates, Boolean needFullPath, Boolean copyPathList)
       at System.Security.Permissions.FileIOPermission..ctor(FileIOPermissionAccess access, String path)
       at System.Web.HttpRequest.MapPath(VirtualPath virtualPath, VirtualPath baseVirtualDir, Boolean allowCrossAppMapping)
       at System.Web.HttpServerUtility.Execute(IHttpHandler handler, TextWriter writer, Boolean preserveForm, Boolean setPreviousPage)
       at System.Web.HttpServerUtilityWrapper.Execute(IHttpHandler handler, TextWriter writer, Boolean preserveForm)
       at System.Web.Mvc.Html.ChildActionExtensions.ActionHelper(HtmlHelper htmlHelper, String actionName, String controllerName, RouteValueDictionary routeValues, TextWriter textWriter)
       at System.Web.Mvc.Html.ChildActionExtensions.RenderAction(HtmlHelper htmlHelper, String actionName, String controllerName, RouteValueDictionary routeValues)
       at ASP._Page_Views_MacroPartials_InsertUmbracoForm_cshtml.Execute() in z:\Utveckling\SCC\trunk\Web\Views\MacroPartials\InsertUmbracoForm.cshtml:line 10
       at System.Web.WebPages.WebPageBase.ExecutePageHierarchy()
       at System.Web.Mvc.WebViewPage.ExecutePageHierarchy()
       at System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage)
       at Umbraco.Core.Profiling.ProfilingView.Render(ViewContext viewContext, TextWriter writer)
       at Umbraco.Web.Mvc.ControllerExtensions.RenderViewResultAsString(ControllerBase controller, ViewResultBase viewResult)
       at Umbraco.Web.Macros.PartialViewMacroEngine.Execute(MacroModel macro, IPublishedContent content)
       at umbraco.macro.LoadPartialViewMacro(MacroModel macro)
       at umbraco.macro.renderMacro(Hashtable pageElements, Int32 pageId)

    If I'm not mistaken, this means that umbraco forms is trying to write something to disk (System.IO.Path)?

    So, what is it actually trying to write to disk? And why?

     

    Kind regards,

    Mats

  • Dennis Aaen 4433 posts 17887 karma points admin hq c-trib
    Jan 31, 2015 @ 01:18
    Dennis Aaen
    0

    Hi Mats,

    I donĀ“t think that you are getting this because of the Forms. You are saying that you have pages with a very long name specificly on chinese and russian. I think that you are getting this error because that you are exceeding the limitation on characters for a page name of 260 characters.

    Try to see this issue http://issues.umbraco.org/issue/U4-1955 from the issue tracker.

    /Dennis

     

  • Matthew Kirschner 322 posts 603 karma points
    Feb 02, 2015 @ 16:40
    Matthew Kirschner
    0

    I'm not saying this is the problem but just want to acknowledge that Umbraco Forms will write a new form template to disk. This happens whenever you create a new form. They are located in /App_Plugins/UmbracoForms/Data/forms/

  • MatsStam 50 posts 195 karma points
    Feb 03, 2015 @ 16:31
    MatsStam
    0

    Hi there Dennis :)

    Well, it does look very similar, but the thing is that the page works. It's just the Form part that says it can't render the partial. If this bug did exist in Umbraco it's gone now, because the page loads just fine except for the form-partial...

    And thanks Matthew,

    Didn't know that. But still, its when trying to render an already existing form on a page that I get this error...

     

    /Mats

     

     

  • AvihayBit 139 posts 270 karma points
    Nov 28, 2018 @ 11:54
    AvihayBit
    0

    Having exactly the same problem here... Hebrew node names makes long URL , but less then 260 - because the page without forms is rendered. when I add the form - it throws the same error...

    did you find any solution?

    OK, googled to this magic in the web.config, hope it helps anyone:

    <httpRuntime maxUrlLength="1000" relaxedUrlToFileSystemMapping="true"/>
    
Please Sign in or register to post replies

Write your reply to:

Draft