cancel
Showing results for 
Search instead for 
Did you mean: 

Differences between Web Script and Dashlet ?

albikai
Champ in-the-making
Champ in-the-making
Hi everyone,

I'm using Alfresco 3.4e (and Liferay 6.0) and I have already succeeded at integrating the 3 Alfresco's default portlet to Liferay.
I have also developed a quick "helloword" web script in Alfresco Share which is fully integrated in Liferay too.
And… my question is : what is the difference between web script and dashlet ?
Because I fail at integrating Alfresco's Dashlet "MyTasks" to Liferay whereas web script worked fine…

I'm a beginner with all these technologies, can you clarify this for me please ?

PS : I'm french so I may make English mistakes, I'm sorry about that.

Here my Liferay log & a screen (I'm not sure it's really relevant to post this here, but maybe you'll understand what's happening !!)
Expression args.htmlid is undefined on line 1, column 13 in org/alfresco/components/dashlets/my-tasks.get.html.ftl.
The problematic instruction:
———-
==> assignment: el=args.htmlid?js_string [on line 1, column 1 in org/alfresco/components/dashlets/my-tasks.get.html.ftl]
———-

Java backtrace for programmers:
———-
freemarker.core.InvalidReferenceException: Expression args.htmlid is undefined on line 1, column 13 in org/alfresco/components/dashlets/my-tasks.get.html.ftl.
   at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:124)
   at freemarker.core.Expression.getStringValue(Expression.java:118)
   at freemarker.core.Expression.getStringValue(Expression.java:93)
   at freemarker.core.StringBuiltins$StringBuiltIn._getAsTemplateModel(StringBuiltins.java:71)
   at freemarker.core.Expression.getAsTemplateModel(Expression.java:89)
   at freemarker.core.Assignment.accept(Assignment.java:90)
   at freemarker.core.Environment.visit(Environment.java:210)
   at freemarker.core.MixedContent.accept(MixedContent.java:92)
   at freemarker.core.Environment.visit(Environment.java:210)
   at freemarker.core.Environment.process(Environment.java:190)
   at org.springframework.extensions.webscripts.processor.FTLTemplateProcessor.process(FTLTemplateProcessor.java:171)
   at org.springframework.extensions.webscripts.AbstractWebScript.renderTemplate(AbstractWebScript.java:589)
   at org.springframework.extensions.webscripts.DeclarativeWebScript.renderFormatTemplate(DeclarativeWebScript.java:267)
   at org.springframework.extensions.webscripts.DeclarativeWebScript.execute(DeclarativeWebScript.java:147)
   at org.springframework.extensions.webscripts.PresentationContainer.executeScript(PresentationContainer.java:69)
   at org.springframework.extensions.webscripts.LocalWebScriptRuntimeContainer.executeScript(LocalWebScriptRuntimeContainer.java:231)
   at org.springframework.extensions.webscripts.AbstractRuntime.executeScript(AbstractRuntime.java:333)
   at org.springframework.extensions.webscripts.AbstractRuntime.executeScript(AbstractRuntime.java:189)
   at org.springframework.extensions.webscripts.servlet.mvc.WebScriptView.renderMergedOutputModel(WebScriptView.java:99)
   at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:250)
   at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1060)
   at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:798)
   at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:716)
   at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:647)
   at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:552)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
   at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551)
   at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488)
   at com.liferay.portlet.PortletRequestDispatcherImpl.dispatch(PortletRequestDispatcherImpl.java:316)
   at com.liferay.portlet.PortletRequestDispatcherImpl.include(PortletRequestDispatcherImpl.java:134)
   at org.alfresco.web.portlet.ProxyPortlet.renderRequest(ProxyPortlet.java:292)
   at org.alfresco.web.portlet.ProxyPortlet.doView(ProxyPortlet.java:225)
   at org.alfresco.web.portlet.ProxyPortlet.render(ProxyPortlet.java:135)
   at com.liferay.portlet.FilterChainImpl.doFilter(FilterChainImpl.java:101)
   at com.liferay.portal.kernel.portlet.PortletFilterUtil.doFilter(PortletFilterUtil.java:64)
   at com.liferay.portal.kernel.servlet.PortletServlet.service(PortletServlet.java:92)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
   at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551)
   at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488)
   at com.liferay.portlet.InvokerPortletImpl.invoke(InvokerPortletImpl.java:638)
   at com.liferay.portlet.InvokerPortletImpl.invokeRender(InvokerPortletImpl.java:723)
   at com.liferay.portlet.InvokerPortletImpl.render(InvokerPortletImpl.java:425)
   at org.apache.jsp.html.portal.render_005fportlet_jsp._jspService(Unknown Source)
   at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
   at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
   at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
   at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
   at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551)
   at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488)
   at com.liferay.portal.util.PortalImpl.renderPortlet(PortalImpl.java:3740)
   at com.liferay.portal.util.PortalImpl.renderPortlet(PortalImpl.java:3699)
   at com.liferay.portal.util.PortalUtil.renderPortlet(PortalUtil.java:1168)
   at com.liferay.portal.action.RenderPortletAction.execute(RenderPortletAction.java:85)
   at com.liferay.portal.action.UpdateLayoutAction.addPortlet(UpdateLayoutAction.java:260)
   at com.liferay.portal.action.UpdateLayoutAction.execute(UpdateLayoutAction.java:211)
   at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
   at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
   at com.liferay.portal.struts.PortalRequestProcessor.process(PortalRequestProcessor.java:153)
   at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
   at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
   at com.liferay.portal.servlet.MainServlet.callParentService(MainServlet.java:508)
   at com.liferay.portal.servlet.MainServlet.service(MainServlet.java:485)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:126)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:126)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.servlet.filters.strip.StripFilter.processFilter(StripFilter.java:261)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:123)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.servlet.filters.themepreview.ThemePreviewFilter.processFilter(ThemePreviewFilter.java:88)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:123)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.servlet.filters.gzip.GZipFilter.processFilter(GZipFilter.java:110)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:123)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.servlet.filters.secure.SecureFilter.processFilter(SecureFilter.java:182)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:123)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.servlet.filters.sso.ntlm.NtlmPostFilter.processFilter(NtlmPostFilter.java:81)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:123)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.sharepoint.SharepointFilter.processFilter(SharepointFilter.java:179)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:123)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.servlet.filters.virtualhost.VirtualHostFilter.processFilter(VirtualHostFilter.java:240)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:123)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:126)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:126)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:738)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.servlet.filters.threadlocal.ThreadLocalFilter.processFilter(ThreadLocalFilter.java:35)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:123)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
   at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:470)
   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
   at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
   at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
   at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
   at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
   at java.lang.Thread.run(Thread.java:619)
15:28:27,630  ERROR [extensions.webscripts.AbstractRuntime] Exception from executeScript - redirecting to status template error: 01190000 Failed to process template org/alfresco/components/dashlets/my-tasks.get.html.ftl
org.springframework.extensions.webscripts.WebScriptException: 01190000 Failed to process template org/alfresco/components/dashlets/my-tasks.get.html.ftl
   at org.springframework.extensions.webscripts.processor.FTLTemplateProcessor.process(FTLTemplateProcessor.java:175)
   at org.springframework.extensions.webscripts.AbstractWebScript.renderTemplate(AbstractWebScript.java:589)
   at org.springframework.extensions.webscripts.DeclarativeWebScript.renderFormatTemplate(DeclarativeWebScript.java:267)
   at org.springframework.extensions.webscripts.DeclarativeWebScript.execute(DeclarativeWebScript.java:147)
   at org.springframework.extensions.webscripts.PresentationContainer.executeScript(PresentationContainer.java:69)
   at org.springframework.extensions.webscripts.LocalWebScriptRuntimeContainer.executeScript(LocalWebScriptRuntimeContainer.java:231)
   at org.springframework.extensions.webscripts.AbstractRuntime.executeScript(AbstractRuntime.java:333)
   at org.springframework.extensions.webscripts.AbstractRuntime.executeScript(AbstractRuntime.java:189)
   at org.springframework.extensions.webscripts.servlet.mvc.WebScriptView.renderMergedOutputModel(WebScriptView.java:99)
   at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:250)
   at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1060)
   at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:798)
   at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:716)
   at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:647)
   at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:552)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
   at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551)
   at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488)
   at com.liferay.portlet.PortletRequestDispatcherImpl.dispatch(PortletRequestDispatcherImpl.java:316)
   at com.liferay.portlet.PortletRequestDispatcherImpl.include(PortletRequestDispatcherImpl.java:134)
   at org.alfresco.web.portlet.ProxyPortlet.renderRequest(ProxyPortlet.java:292)
   at org.alfresco.web.portlet.ProxyPortlet.doView(ProxyPortlet.java:225)
   at org.alfresco.web.portlet.ProxyPortlet.render(ProxyPortlet.java:135)
   at com.liferay.portlet.FilterChainImpl.doFilter(FilterChainImpl.java:101)
   at com.liferay.portal.kernel.portlet.PortletFilterUtil.doFilter(PortletFilterUtil.java:64)
   at com.liferay.portal.kernel.servlet.PortletServlet.service(PortletServlet.java:92)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
   at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551)
   at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488)
   at com.liferay.portlet.InvokerPortletImpl.invoke(InvokerPortletImpl.java:638)
   at com.liferay.portlet.InvokerPortletImpl.invokeRender(InvokerPortletImpl.java:723)
   at com.liferay.portlet.InvokerPortletImpl.render(InvokerPortletImpl.java:425)
   at org.apache.jsp.html.portal.render_005fportlet_jsp._jspService(Unknown Source)
   at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
   at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
   at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
   at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
   at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551)
   at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488)
   at com.liferay.portal.util.PortalImpl.renderPortlet(PortalImpl.java:3740)
   at com.liferay.portal.util.PortalImpl.renderPortlet(PortalImpl.java:3699)
   at com.liferay.portal.util.PortalUtil.renderPortlet(PortalUtil.java:1168)
   at com.liferay.portal.action.RenderPortletAction.execute(RenderPortletAction.java:85)
   at com.liferay.portal.action.UpdateLayoutAction.addPortlet(UpdateLayoutAction.java:260)
   at com.liferay.portal.action.UpdateLayoutAction.execute(UpdateLayoutAction.java:211)
   at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
   at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
   at com.liferay.portal.struts.PortalRequestProcessor.process(PortalRequestProcessor.java:153)
   at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
   at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
   at com.liferay.portal.servlet.MainServlet.callParentService(MainServlet.java:508)
   at com.liferay.portal.servlet.MainServlet.service(MainServlet.java:485)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:126)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:126)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.servlet.filters.strip.StripFilter.processFilter(StripFilter.java:261)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:123)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.servlet.filters.themepreview.ThemePreviewFilter.processFilter(ThemePreviewFilter.java:88)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:123)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.servlet.filters.gzip.GZipFilter.processFilter(GZipFilter.java:110)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:123)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.servlet.filters.secure.SecureFilter.processFilter(SecureFilter.java:182)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:123)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.servlet.filters.sso.ntlm.NtlmPostFilter.processFilter(NtlmPostFilter.java:81)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:123)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.sharepoint.SharepointFilter.processFilter(SharepointFilter.java:179)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:123)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.servlet.filters.virtualhost.VirtualHostFilter.processFilter(VirtualHostFilter.java:240)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:123)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:126)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:126)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:738)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:196)
   at com.liferay.portal.servlet.filters.threadlocal.ThreadLocalFilter.processFilter(ThreadLocalFilter.java:35)
   at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:123)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
   at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:470)
   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
   at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
   at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
   at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
   at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
   at java.lang.Thread.run(Thread.java:619)
Caused by: freemarker.core.InvalidReferenceException: Expression args.htmlid is undefined on line 1, column 13 in org/alfresco/components/dashlets/my-tasks.get.html.ftl.
   at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:124)
   at freemarker.core.Expression.getStringValue(Expression.java:118)
   at freemarker.core.Expression.getStringValue(Expression.java:93)
   at freemarker.core.StringBuiltins$StringBuiltIn._getAsTemplateModel(StringBuiltins.java:71)
   at freemarker.core.Expression.getAsTemplateModel(Expression.java:89)
   at freemarker.core.Assignment.accept(Assignment.java:90)
   at freemarker.core.Environment.visit(Environment.java:210)
   at freemarker.core.MixedContent.accept(MixedContent.java:92)
   at freemarker.core.Environment.visit(Environment.java:210)
   at freemarker.core.Environment.process(Environment.java:190)
   at org.springframework.extensions.webscripts.processor.FTLTemplateProcessor.process(FTLTemplateProcessor.java:171)
   … 137 more

[img]http://img256.imageshack.us/img256/736/sanstitrefi.png[/img]
1 REPLY 1

ddraper
World-Class Innovator
World-Class Innovator
A Dashlet is a WebScript that is assigned to the "dashlet" family (or "user-dashlet" or "site-dashlet" family if it is user/site specific). However, this WebScript has an associated .head.ftl file which defined JavaScript and CSS resource requests and these resources are loaded into the HTML <head> but they are ONLY included in the page if specifically requested.

When the WebScript is run on a dashboard it is being run on a page that will output the requests for CSS and JavaScript resources and will be able to function. When the dashlet is run within the context of LifeRay it is not making those requests. However, the error that you're experiencing is because the WebScript is dependent upon certain arguments being passed to it which are not created when in the Portlet context (i.e. the args.htmlid).

So in summary a Dashlet IS a WebScript but one that can only be run within the context of a Share dashboard,

Regards,
Dave