legacy-knowledge-base
Publicado Jul. 25, 0002

'IllegalStateException' Errors When 'layout.parallel.render.enable' is Set to 'true' in Liferay Portal 6.2 on Tomcat

written-by

Justin Choi

How To articles are not official guidelines or officially supported documentation. They are community-contributed content and may not always reflect the latest updates to Liferay DXP. We welcome your feedback to improve How To articles!

While we make every effort to ensure this Knowledge Base is accurate, it may not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with any feedback or concerns.

legacy-article

learn-legacy-article-disclaimer-text

This article documents a known issue for users on Apache Tomcat 6.0.44, 7.0.69 or newer (including Tomcat 8) after Apache has issued a bug fix on those versions.

When layout.parallel.render.enable=truehas been set, users might see the following errors in the console logs on Liferay Portal 6.2:

SEVERE: Servlet.service() for servlet jsp threw exception
java.lang.IllegalStateException: No modifications are allowed to a locked ParameterMap
        at org.apache.catalina.util.ParameterMap.put(ParameterMap.java:164)
        at java.util.HashMap.putAll(HashMap.java:643)
        at org.apache.catalina.util.ParameterMap.putAll(ParameterMap.java:186)
        at org.apache.catalina.core.ApplicationHttpRequest.parseParameters(ApplicationHttpRequest.java:739)
        at org.apache.catalina.core.ApplicationHttpRequest.getParameter(ApplicationHttpRequest.java:376)
        at javax.servlet.ServletRequestWrapper.getParameter(ServletRequestWrapper.java:140)
        at javax.servlet.ServletRequestWrapper.getParameter(ServletRequestWrapper.java:140)
        at com.liferay.portlet.SecurityPortletContainerWrapper.hasAccessPermission(SecurityPortletContainerWrapper.java:337)
        at com.liferay.portlet.SecurityPortletContainerWrapper.check(SecurityPortletContainerWrapper.java:209)
        at com.liferay.portlet.SecurityPortletContainerWrapper.checkRender(SecurityPortletContainerWrapper.java:243)
        at com.liferay.portlet.SecurityPortletContainerWrapper.render(SecurityPortletContainerWrapper.java:139)
        at com.liferay.portlet.RestrictPortletContainerWrapper.render(RestrictPortletContainerWrapper.java:126)
        at com.liferay.portal.kernel.portlet.PortletContainerUtil.render(PortletContainerUtil.java:156)
        at com.liferay.portal.layoutconfiguration.util.PortletRenderer._render(PortletRenderer.java:125)
        at com.liferay.portal.layoutconfiguration.util.PortletRenderer.access$4(PortletRenderer.java:107)
        at com.liferay.portal.layoutconfiguration.util.PortletRenderer$PortletRendererCallable.doCall(PortletRenderer.java:180)
        at com.liferay.portal.layoutconfiguration.util.PortletRenderer$PortletRendererCallable.doCall(PortletRenderer.java:1)
        at com.liferay.portal.kernel.executor.CopyThreadLocalCallable.call(CopyThreadLocalCallable.java:69)
        at java.util.concurrent.FutureTask.run(FutureTask.java:262)
        at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask._runTask(ThreadPoolExecutor.java:682)
        at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask.run(ThreadPoolExecutor.java:593)
        at java.lang.Thread.run(Thread.java:745)

 

27-Oct-2017 06:54:45.570 SEVERE [RuntimePageImpl-3] org.apache.catalina.core.ApplicationDispatcher.invoke Servlet.service() for servlet jsp threw exception
 java.lang.IllegalStateException: The request object has been recycled and is no longer associated with this facade
	at org.apache.catalina.connector.RequestFacade.getSession(RequestFacade.java:889)
	at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:229)
	at org.apache.catalina.core.ApplicationHttpRequest.getSession(ApplicationHttpRequest.java:575)
...
27-Oct-2017 06:54:45.584 SEVERE [RuntimePageImpl-4] org.apache.catalina.core.ApplicationDispatcher.invoke Servlet.service() for servlet jsp threw exception
 java.lang.IllegalStateException: The request object has been recycled and is no longer associated with this facade
	at org.apache.catalina.connector.RequestFacade.getAttribute(RequestFacade.java:279)
	at org.apache.catalina.c

The second one might occur when the following JVM argument is set in CATALINA_OPTS:

org.apache.catalina.connector.RECYCLE_FACADES=true

Resolution

The solution is to set layout.parallel.render.enable= to false in the portal-ext.properties. This property has already been deprecated and set to false by default as of DXP 7.0.

Additional Information

See this article for more information from Apache.

did-this-article-resolve-your-issue

legacy-knowledge-base