0
Fixed
Event Broker: System.ArgumentNullException: Value cannot be null
After disabling a global operation list I clicked on the Home page to start the EvB scheduler and got the following error and stack trace:
Error System.Web.HttpException (0x80004005): Error executing child request for handler 'System.Web.Mvc.HttpHandlerUtil+ServerExecuteHttpHandlerAsyncWrapper'. ---> System.ArgumentNullException: Value cannot be null. Parameter name: sourceElement at Unify.Framework.XElementExtensions.AttributeValue(XElement sourceElement, XName attributeName) in c:\Program Files (x86)\Jenkins\jobs\Event Broker\workspace\Core Framework SDK\Source\Xml\Unify.Framework.Xml\XElementExtensions.AttributeValues.cs:line 31 at Unify.EventBroker.Web.AlertMessages.AgentTestConnection(HtmlHelper htmlHelper, UrlHelper urlHelper, AlertInformation alertInformation) in c:\Program Files (x86)\Jenkins\jobs\Event Broker\workspace\Source\Unify.EventBroker.Web\Models\Alerts\AlertMessages.cs:line 146 at Unify.EventBroker.Web.AlertMessages.ShowMessage(HtmlHelper htmlHelper, UrlHelper urlHelper, AlertInformation alertInformation) in c:\Program Files (x86)\Jenkins\jobs\Event Broker\workspace\Source\Unify.EventBroker.Web\Models\Alerts\AlertMessages.cs:line 51 at ASP._Page_Views_Home_AlertOverview_cshtml.Execute() in c:\Program Files\UNIFY Solutions\Event Broker\Web\Views\Home\AlertOverview.cshtml:line 18 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.Mvc.ViewResultBase.ExecuteResult(ControllerContext context) at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass1c.<InvokeActionResultWithFilters>b__19() at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilter(IResultFilter filter, ResultExecutingContext preContext, Func`1 continuation) at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult) at System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName) at System.Web.Mvc.Controller.ExecuteCore() at System.Web.Mvc.ControllerBase.Execute(RequestContext requestContext) at System.Web.Mvc.MvcHandler.<>c__DisplayClass6.<>c__DisplayClassb.<BeginProcessRequest>b__5() at System.Web.Mvc.Async.AsyncResultWrapper.<>c__DisplayClass1.<MakeVoidDelegate>b__0() at System.Web.Mvc.MvcHandler.<>c__DisplayClasse.<EndProcessRequest>b__d() at System.Web.Mvc.HttpHandlerUtil.ServerExecuteHttpHandlerWrapper.<>c__DisplayClass4.<Wrap>b__3() at System.Web.Mvc.HttpHandlerUtil.ServerExecuteHttpHandlerWrapper.Wrap[TResult](Func`1 func) at System.Web.HttpServerUtility.ExecuteInternal(IHttpHandler handler, TextWriter writer, Boolean preserveForm, Boolean setPreviousPage, VirtualPath path, VirtualPath filePath, String physPath, Exception error, String queryStringOverride) at System.Web.HttpServerUtility.ExecuteInternal(IHttpHandler handler, TextWriter writer, Boolean preserveForm, Boolean setPreviousPage, VirtualPath path, VirtualPath filePath, String physPath, Exception error, String queryStringOverride) 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.Action(HtmlHelper htmlHelper, String actionName, String controllerName, RouteValueDictionary routeValues) at Unify.EventBroker.Web.RenderExtensions.ActionRefresh(HtmlHelper htmlHelper, UrlHelper urlHelper, Func`2 htmlHelperAction, Func`2 urlHelperAction, String id, Int32 timeout) in c:\Program Files (x86)\Jenkins\jobs\Event Broker\workspace\Source\Unify.EventBroker.Web\Extensions\RenderExtensions.cs:line 789 at ASP._Page_Views_Home_Index_cshtml.Execute() in c:\Program Files\UNIFY Solutions\Event Broker\Web\Views\Home\Index.cshtml:line 31 at System.Web.WebPages.WebPageBase.ExecutePageHierarchy() at System.Web.Mvc.WebViewPage.ExecutePageHierarchy() at System.Web.WebPages.StartPage.ExecutePageHierarchy() at System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage) at System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context) at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass1c.<InvokeActionResultWithFilters>b__19() at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilter(IResultFilter filter, ResultExecutingContext preContext, Func`1 continuation) at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult) at System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName)
I am going to restart the service but before I do do you wish to see this for yourself? It is possible that restarting may prevent this exception from recurring ...
Customer support service by UserEcho
Tony, can you do a quick analysis and determine if we should try and get any more information out of Bob's EB instance before he restarts it.
As expected restarting the service solved the problem ... nothing urgent here, but the logs may be of interest.
Sorry guys - things got really screwed up and I had no choice ... suspect the problem was environmental/resource availability.
I think Tony was going to ask you for the config when it was still broken, but as the issue was resolved by restarting I'd wager a guess that the problem was in-memory and reloading the (correct) config fixed it.
As you've been able to resolve it for now we'll defer looking at this until the next lifecycle, but the stack trace you've provided us will probably be enough to go on.
Thanks again.
The test agent XML had no checks around whether a message element was null. There are a few potential causes for this, but the most likely is that the exception thrown during testing of the agent did not have a message. Without the full logs I can't specifically say which exception this was.
Reassigned for confirmation of completion.
The error handling around this component has been updated to ensure that null references can't popup on reading the XML; without knowing the Agent failing / the conditions its difficult to know why the exception message would have been null (cause of the issue), and may have been incidentally fixed with the behaviour of some agents having changes.