Custom Datalist with Alvex Datagrid

cancel
Showing results for 
Search instead for 
Did you mean: 
lmaorence
Active Member

Re: Custom Datalist with Alvex Datagrid

Hello again, I discovered an issue where the filter will not work after clicking the create new item or edit item buttons and not hitting save. Any ideas? Here is the error log:

2017-05-03 17:49:06,734 ERROR [org.springframework.extensions.webscripts.AbstractRuntime] [http-apr-8080-exec-9] Exception from executeScript - redirecting to status template error: 04030002 Wrapped Exception (with status template): 04030004 Error during processing of the template 'The following has evaluated to null or missing:
==> data  [in template "alvex/datalists/datalist-search.post.json.ftl" at line 4, column 16]

Tip: If the failing expression is known to be legally null/missing, either specify a default value with myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthessis: (myOptionVar.foo)!myDefault, (myOptionVar.foo)??

The failing instruction:
==> ${data.query} auto-escaped  [in template "alvex/datalists/datalist-search.post.json.ftl" at line 4, column 14]'. Please contact your system administrator.
org.springframework.extensions.webscripts.WebScriptException: 04030002 Wrapped Exception (with status template): 04030004 Error during processing of the template 'The following has evaluated to null or missing:
==> data  [in template "alvex/datalists/datalist-search.post.json.ftl" at line 4, column 16]

Tip: If the failing expression is known to be legally null/missing, either specify a default value with myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthessis: (myOptionVar.foo)!myDefault, (myOptionVar.foo)??

The failing instruction:
==> ${data.query} auto-escaped  [in template "alvex/datalists/datalist-search.post.json.ftl" at line 4, column 14]'. Please contact your system administrator.
    at org.springframework.extensions.webscripts.AbstractWebScript.createStatusException(AbstractWebScript.java:1138)
    at org.springframework.extensions.webscripts.DeclarativeWebScript.execute(DeclarativeWebScript.java:171)
    at org.alfresco.repo.web.scripts.RepositoryContainer$3.execute(RepositoryContainer.java:505)
    at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:457)
    at org.alfresco.repo.web.scripts.RepositoryContainer.transactionedExecute(RepositoryContainer.java:580)
    at org.alfresco.repo.web.scripts.RepositoryContainer.transactionedExecuteAs(RepositoryContainer.java:649)
    at org.alfresco.repo.web.scripts.RepositoryContainer.executeScriptInternal(RepositoryContainer.java:421)
    at org.alfresco.repo.web.scripts.RepositoryContainer.executeScript(RepositoryContainer.java:301)
    at org.springframework.extensions.webscripts.AbstractRuntime.executeScript(AbstractRuntime.java:378)
    at org.springframework.extensions.webscripts.AbstractRuntime.executeScript(AbstractRuntime.java:209)
    at org.springframework.extensions.webscripts.servlet.WebScriptServlet.service(WebScriptServlet.java:132)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.alfresco.web.app.servlet.GlobalLocalizationFilter.doFilter(GlobalLocalizationFilter.java:61)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
    at org.apache.tomcat.util.net.AprEndpoint$SocketWithOptionsProcessor.run(AprEndpoint.java:2403)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Thread.java:745)
Caused by: org.alfresco.service.cmr.repository.TemplateException: 04030004 Error during processing of the template 'The following has evaluated to null or missing:
==> data  [in template "alvex/datalists/datalist-search.post.json.ftl" at line 4, column 16]

Tip: If the failing expression is known to be legally null/missing, either specify a default value with myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthessis: (myOptionVar.foo)!myDefault, (myOptionVar.foo)??

The failing instruction:
==> ${data.query} auto-escaped  [in template "alvex/datalists/datalist-search.post.json.ftl" at line 4, column 14]'. Please contact your system administrator.
    at org.alfresco.repo.template.FreeMarkerProcessor.process(FreeMarkerProcessor.java:227)
    at org.springframework.extensions.webscripts.AbstractWebScript.renderTemplate(AbstractWebScript.java:967)
    at org.springframework.extensions.webscripts.DeclarativeWebScript.renderFormatTemplate(DeclarativeWebScript.java:267)
    at org.springframework.extensions.webscripts.DeclarativeWebScript.execute(DeclarativeWebScript.java:147)
    ... 33 more
Caused by: freemarker.core.InvalidReferenceException: The following has evaluated to null or missing:
==> data  [in template "alvex/datalists/datalist-search.post.json.ftl" at line 4, column 16]

Tip: If the failing expression is known to be legally null/missing, either specify a default value with myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthessis: (myOptionVar.foo)!myDefault, (myOptionVar.foo)??

The failing instruction:
==> ${data.query} auto-escaped  [in template "alvex/datalists/datalist-search.post.json.ftl" at line 4, column 14]
    at freemarker.core.InvalidReferenceException.getInstance(InvalidReferenceException.java:98)
    at freemarker.core.UnexpectedTypeException.newDesciptionBuilder(UnexpectedTypeException.java:41)
    at freemarker.core.UnexpectedTypeException.<init>(UnexpectedTypeException.java:24)
    at freemarker.core.Dot._eval(Dot.java:81)
    at freemarker.core.Expression.eval(Expression.java:111)
    at freemarker.core.ListLiteral.getModelList(ListLiteral.java:126)
    at freemarker.core.MethodCall._eval(MethodCall.java:94)
    at freemarker.core.Expression.eval(Expression.java:111)
    at freemarker.core.Expression.evalAndCoerceToString(Expression.java:115)
    at freemarker.core.DollarVariable.accept(DollarVariable.java:76)
    at freemarker.core.Environment.visit(Environment.java:265)
    at freemarker.core.MixedContent.accept(MixedContent.java:93)
    at freemarker.core.Environment.visit(Environment.java:265)
    at freemarker.core.EscapeBlock.accept(EscapeBlock.java:85)
    at freemarker.core.Environment.visit(Environment.java:265)
    at freemarker.core.MixedContent.accept(MixedContent.java:93)
    at freemarker.core.Environment.visit(Environment.java:265)
    at freemarker.core.Environment.process(Environment.java:243)
    at org.alfresco.repo.template.FreeMarkerProcessor.process(FreeMarkerProcessor.java:223)
    ... 36 more
vhelmut
Active Member II

Re: Custom Datalist with Alvex Datagrid

Hi, Lawrence! Smiley Happy

I try to understand brief. Say please if i understand you correctly:

  1. You create or edit datalist item;
  2. Click button Save;
  3. When try to use filter?
the filter will not work after clicking the create new item or edit item buttons and not hitting save.

If you try to find something when there is an open modal window and this issue is reproduced I think it's normal: you don't complete one transaction and try to start new.

If you don't mind, I suggest you to define exact sequence of actions, next i'll try to reproduce issue

Have a nice day!

lmaorence
Active Member

Re: Custom Datalist with Alvex Datagrid

Ok here's what happpens:
1. Create / Edit datalist item (modal window opens)

2.  Click "Cancel" or close the modal

3. Then there's the issue, filter is not working

But when you try:

1. Create / Edit datalist item (modal window opens)

2.  Click "Save"

3. Filter is working

I think the problem is when you hit Cancel or just close the modal window, The buttons from the modal still persists and conflicts with filter's buttons. But when you hit Save, the list refreshes and also the filter thus (maybe) moving filter buttons up the reference stack making it work. idk haha