Search doesn´t work in Liferay Porygon 2.0.0 Theme

thumbnail
Dieter Metzler, modified 6 Years ago. New Member Posts: 17 Join Date: 3/11/08 Recent Posts
I have installed and tested the latest Porygon 2.0.0 Theme on Liferay 7.1ga1. Everything looks good except the search doesn´t work as expected. In the console I get the following error:



2018-10-23 06:52:16.625 ERROR [http-nio-8080-exec-7][ComboServlet:89] java.lang.IllegalArgumentException: Path [porygon-theme@2.0.0/js/top_search.es.js] does not start with a "/" characterjava.lang.IllegalArgumentException: Path [porygon-theme@2.0.0/js/top_search.es.js] does not start with a "/" characterat org.apache.catalina.core.ApplicationContext.getRequestDispatcher(ApplicationContext.java:404)at org.apache.catalina.core.ApplicationContextFacade.getRequestDispatcher(ApplicationContextFacade.java:222)at com.liferay.portal.servlet.ComboServlet.getResourceRequestDispatcher(ComboServlet.java:428)at com.liferay.portal.servlet.ComboServlet.doService(ComboServlet.java:238)at com.liferay.portal.servlet.ComboServlet.service(ComboServlet.java:86)at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:119)at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:144)at com.liferay.portal.servlet.filters.language.LanguageFilter.processFilter(LanguageFilter.java:82)at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:49)at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:207)at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:112)at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:144)at com.liferay.portal.sharepoint.SharepointFilter.processFilter(SharepointFilter.java:88)at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:49)at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:207)at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:112)at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:144)at com.liferay.portal.servlet.filters.virtualhost.VirtualHostFilter.processFilter(VirtualHostFilter.java:263)at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:49)at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:207)at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:112)at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:188)at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:188)at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:168)at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:168)at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:188)at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:100)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:494)at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:651)at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:407)at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:754)at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1376)at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)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:748)2018-10-23 06:52:17.159 ERROR [http-nio-8080-exec-7][status_jsp:927] Path [porygon-theme@2.0.0/js/top_search.es.js] does not start with a "/" character



Is it possible that there is a problem with the Liferay AMD Loader? I have seen there is a change in the syntax to the old Porygon 1.0.0 Version.

In main.js it´s now Liferay.Loader.require. In Porygon v1.0.0 it was only require. I tried to change it to require, but then I got an other error.


Liferay.Loader.require(

'porygon-theme@2.0.0/js/top_search.es',

function(TopSearch) {

new TopSearch.default();

}

);




Is it expected to work in the next Liferay-7.1ga2 release?



Best regards












Panagiotis Raditsas, modified 6 Years ago. New Member Posts: 2 Join Date: 7/3/15 Recent Posts

There is a type-o in main.js located inside the WAR.

Open the lpkg with 7Zip and then open the porygon-theme-2.0.1.war also.

Go to js/main.js and replace 'porygon-theme@2.0.0/js/top_search.es' with 'porygon-theme@2.0.1/js/top_search.es'

Then press back back back multiple times in 7zip and press save/update in any prompt message that appears.

 

Remove the old theme and place the modified lpkg inside the deploy directory.

Hope this helps
 

Sincerely,
Panagiotis Raditsas