You are viewing limited content. For full access, please sign in.

Question

Question

User Task Errors

asked on February 5, 2020

I received complaints that users are not getting their task notifications from Forms. Upon review of the error logs, we found lots of errors and every time, the error is:

 

An unexpected error has occurred. [LFF502-UnexpectedError]
Details:
URL: /Forms/form/approval/70607e25-5227-4f30-a6a8-80f32620ff54/{{icon || src || svgUrl}}
Error: UnexpectedError
Date: 2/5/2020 11:36:51 AM (Eastern Standard Time)
HTTP Status Code: 500
Business Process ID: 0
User: ADOM\rharoon
IP: 10.85.224.47
Browser: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Edge/17.17134
Business Process Name:
Stack Trace:
Caught exception: Laserfiche.Forms.CommonUtils.Exceptions.LFFormsException
Message: An unexpected error has occurred. [LFF502-UnexpectedError]

Inner exception: System.ArgumentException
Message: Illegal characters in path.
   at System.IO.Path.LegacyNormalizePath(String path, Boolean fullCheck, Int32 maxPathLength, Boolean expandShortPaths)
   at System.IO.Path.GetFullPathInternal(String path)
   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..ctor(FileIOPermissionAccess access, String path)
   at System.Web.InternalSecurityPermissions.PathDiscovery(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.HttpServerUtility.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.Action(HtmlHelper htmlHelper, String actionName, String controllerName, RouteValueDictionary routeValues)
   at ASP._Page_Views_Form_Approval_cshtml.<Execute>b__19() in d:\Program Files\Laserfiche\Laserfiche Forms\Forms\Views\Form\Approval.cshtml:line 97
   at System.Web.WebPages.WebPageBase.<>c__DisplayClass7.<RenderSection>b__5(TextWriter tw)
   at System.Web.WebPages.WebPageExecutingBase.WriteTo(TextWriter writer, HelperResult content)
   at ASP._Page_Views_Shared__Layout_app_cshtml.<RenderSectionTopHeader>b__9(TextWriter __razor_helper_writer) in d:\Program Files\Laserfiche\Laserfiche Forms\Forms\Views\Shared\_Layout.app.cshtml:line 104
   at System.Web.WebPages.WebPageBase.Write(HelperResult result)
   at ASP._Page_Views_Shared__Layout_app_cshtml.<Execute>b__32() in d:\Program Files\Laserfiche\Laserfiche Forms\Forms\Views\Shared\_Layout.app.cshtml:line 183
   at System.Web.WebPages.WebPageBase.<>c__DisplayClass7.<RenderSection>b__5(TextWriter tw)
   at System.Web.WebPages.WebPageBase.Write(HelperResult result)
   at ASP._Page_Views_Shared__Layout_cshtml.Execute() in d:\Program Files\Laserfiche\Laserfiche Forms\Forms\Views\Shared\_Layout.cshtml:line 127
   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 System.Web.WebPages.WebPageBase.<>c__DisplayClass3.<RenderPageCore>b__2(TextWriter writer)
   at System.Web.WebPages.WebPageBase.Write(HelperResult result)
   at System.Web.WebPages.WebPageBase.RenderSurrounding(String partialViewName, Action`1 body)
   at System.Web.WebPages.WebPageBase.PopContext()
   at System.Web.WebPages.WebPageBase.<>c__DisplayClass3.<RenderPageCore>b__2(TextWriter writer)
   at System.Web.WebPages.WebPageBase.Write(HelperResult result)
   at System.Web.WebPages.WebPageBase.RenderSurrounding(String partialViewName, Action`1 body)
   at System.Web.WebPages.WebPageBase.PopContext()
   at System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context)
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult)
   at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass21.<BeginInvokeAction>b__1e(IAsyncResult asyncResult)
 
Any ideas?
0 0

Answer

SELECTED ANSWER
replied on October 27, 2020

We figured out the root cause of "Illegal characters in path." error, it is because when user uses Microsoft Edge(HTML) to access Forms pages, Microsoft Edge(HTML) will append "/{{icon || src || svgUrl}}" to the links on the pages automatically and will cause the error logged in event log, but end user will not be affected as this error will not show to them.

In Laserfiche 11, the support of Microsoft Edge(HTML) will be ended(https://answers.laserfiche.com/questions/179345/EndofSupport-Announcement-for-Internet-Explorer-and-Microsoft-Edge-Legacy) so we will not fix this issue.

0 0

Replies

replied on February 5, 2020

The inner exception here is "Illegal characters in path" which may be related to the URL that is trying to be reached (see below):

 

We (VAR) have a ticket open for this user, and we'll be investigating this issue further. I'll update this thread with additional information when we determine the specific issue and resolution.

1 0
replied on March 13, 2020

We have the same issue and have not been able to trace down the cause. If you have a solution we would love to know it.

Thank you

0 0
replied on March 13, 2020

My apologies for not updating this thread sooner.

After reviewing this issue with the user, and reviewing the above stack trace, we determined that his particular error trace was unrelated to the issue of users not receiving notifications.

However, we did drill down for more information on this error stack. This "Illegal Characters in Path" exception is thrown during the "LegacyNormalizePath" activity. This indicates that this Forms process is using Legacy references; in other words, this process was created in a previous version of Forms, then Forms was upgraded to a newer version.

This error was caused by Legacy references in the process not working correctly. This issue didn't cause any problems in the execution of the process, it just threw red flags in the event log. We advised that this particular error could simply be ignored, because these Legacy references throwing errors was not affecting functionality.

However, if the goal was to get these errors to stop showing in the Event Log, then the fix is to re-create the Legacy process within the newer version of Forms (using the Legacy process as a reference). Note: this is not an export/import option, but rather creating a new, blank process and building up the new process to match the old one.

There may be an option to use the current process as a "Template" in Forms, then spin up a brand new process off of that template (that would cut down the manual work), but I haven't tested that for confirmation.

 

--------------------------------------------------

 

In relation to the original issue of users not receiving notifications when assigned a task, this was due to intermittent issues with their SMTP relay that Forms was using. Users were successfully assigned to the task, the process wasn't suspended, but they weren't receiving the email if the SMTP server/relay wasn't available at that moment in time. 

If this were ONLY an email task that failed, we'd see the process become suspended, but because it was a user task, and the task was successfully assigned, there was no retry for that (the email simply failed, while the task succeeded).

This organization plans to look into the issues with their SMTP relay on their end, but to workaround this issue in the meantime, we configured the daily Forms reminder emails within FormsConfig (Email Templates > Recurring Notifications). This way, if a user didn't receive the initial email when a task was assigned, there would be a daily reminder sent out to all users assigned to any task, with a list of tasks they were assigned to at that time.

0 0
You are not allowed to follow up in this post.

Sign in to reply to this post.