Forums de discussion

java.lang.ClassCastException: com.liferay.portlet.ResourceResponseImpl cann

Rajnish nagpal, modifié il y a 13 années.

java.lang.ClassCastException: com.liferay.portlet.ResourceResponseImpl cann

New Member Publications: 3 Date d'inscription: 02/07/10 Publications récentes
Hi,

I am creating portlet 2.0 with JSF 2.0. using the porletfaces bridge. Right now, i am trying to implement ajax on my UIComponents. But, I am getting following exception:

java.lang.ClassCastException: com.liferay.portlet.ResourceResponseImpl cannot be cast to javax.servlet.http.HttpServletResponse
at com.sun.faces.util.OnOffResponseWrapper.<init>(OnOffResponseWrapper.java:58)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:94)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
at BridgeImpl.java.doFacesRequest(BridgeImpl.java:299)
at org.portletfaces.bridge.GenericFacesPortlet.serveResource(GenericFacesPortlet.java:173)
at com.liferay.portlet.FilterChainImpl.doFilter(FilterChainImpl.java:130)
at com.liferay.portal.kernel.portlet.PortletFilterUtil.doFilter(PortletFilterUtil.java:76)
at com.liferay.portal.kernel.servlet.PortletServlet.service(PortletServlet.java:100)
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:630)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
at com.liferay.portlet.InvokerPortletImpl.invoke(InvokerPortletImpl.java:618)
at com.liferay.portlet.InvokerPortletImpl.invokeResource(InvokerPortletImpl.java:727)
at com.liferay.portlet.InvokerPortletImpl.serveResource(InvokerPortletImpl.java:496)
at com.liferay.portal.action.LayoutAction.processPortletRequest(LayoutAction.java:672)
at com.liferay.portal.action.LayoutAction.processLayout(LayoutAction.java:459)
at com.liferay.portal.action.LayoutAction.execute(LayoutAction.java:195)
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:160)
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:608)
at com.liferay.portal.servlet.MainServlet.service(MainServlet.java:846)
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:165)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:95)
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:165)
at com.liferay.portal.servlet.filters.strip.StripFilter.processFilter(StripFilter.java:182)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:92)
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:165)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:95)
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:165)
at com.liferay.portal.servlet.filters.gzip.GZipFilter.processFilter(GZipFilter.java:148)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:92)
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:165)
at com.liferay.portal.servlet.filters.secure.SecureFilter.processFilter(SecureFilter.java:286)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:92)
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.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
at com.liferay.portal.servlet.FriendlyURLServlet.service(FriendlyURLServlet.java:143)
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:165)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:95)
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:165)
at com.liferay.portal.servlet.filters.etag.ETagFilter.processFilter(ETagFilter.java:51)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:92)
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:165)
at com.liferay.portal.servlet.filters.strip.StripFilter.processFilter(StripFilter.java:182)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:92)
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:165)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:95)
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:165)
at com.liferay.portal.servlet.filters.gzip.GZipFilter.processFilter(GZipFilter.java:148)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:92)
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:165)
at com.liferay.portal.servlet.filters.secure.SecureFilter.processFilter(SecureFilter.java:286)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:92)
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:165)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:95)
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:165)
at com.liferay.portal.servlet.filters.cache.CacheFilter.processFilter(CacheFilter.java:422)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:92)
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:165)
at com.liferay.portal.servlet.filters.autologin.AutoLoginFilter.processFilter(AutoLoginFilter.java:254)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:92)
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:165)
at com.liferay.portal.servlet.filters.sso.opensso.OpenSSOFilter.processFilter(OpenSSOFilter.java:73)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:92)
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:165)
at com.liferay.portal.servlet.filters.sso.ntlm.NtlmPostFilter.processFilter(NtlmPostFilter.java:92)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:92)
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:165)
at com.liferay.portal.sharepoint.SharepointFilter.processFilter(SharepointFilter.java:192)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:92)
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:165)
at com.liferay.portal.servlet.filters.virtualhost.VirtualHostFilter.processFilter(VirtualHostFilter.java:236)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:92)
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:165)
at com.liferay.portal.servlet.filters.threadlocalcache.ThreadLocalCacheFilter.processFilter(ThreadLocalCacheFilter.java:52)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:92)
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:165)
at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:95)
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 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:433)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
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:286)
at org.apache.coyote.http11.Http11NioProcessor.process(Http11NioProcessor.java:880)
at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:719)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:2081)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

I think the BridgeImpl.java.doFacesRequest(BridgeImpl.java:299) is passing the com.liferay.portlet.ResourceResponseImpl object. I saw the com.sun.faces.util.OnOffResponseWrapper.<init>(OnOffResponseWrapper.java:58) method which checks the object type to be javax.servlet.http.HttpServletResponse otherwise it throws the ClassCastException.

Here is some of the code:

xhtml file:
<h:selectOneMenu id="country" value="#{country}" required="true" label="Country" valueChangeListener="#{Details.stateListener}">
<f:selectItems value="#{countries}" />
<f:ajax event="change" render="state" />
</h:selectOneMenu>

Details component:
@Component("Details")
@Scope("session")
public class DetailsComponent implements Serializable {
private static final long serialVersionUID = -262367321078956712L;


public ArrayList<SelectItem> getStates() {
return states;
}

public void setStates(ArrayList<SelectItem> states) {
this.states = states;
}

public ArrayList<SelectItem> getCountries() {
return countries;
}

public void setCountries(ArrayList<SelectItem> countries) {
this.countries = countries;
}


public void stateListener() {
states = metadataService.listSelectCountryStates(contact().getCountry());
}
}


Please help.

With regards,
Rajnish Nagpal
thumbnail
Neil Griffin, modifié il y a 13 années.

RE: java.lang.ClassCastException: com.liferay.portlet.ResourceResponseImpl

Liferay Legend Publications: 2655 Date d'inscription: 27/07/05 Publications récentes
Rajnish, I looked for OnOffResponseWrapper.java in the Mojarra 2.0.4-b02 source tree but couldn't find it. What version of Mojarra are you using?
PortletFaces Community Member, modifié il y a 12 années.

RE: java.lang.ClassCastException: com.liferay.portlet.ResourceResponseImpl

Regular Member Publications: 199 Date d'inscription: 03/04/12 Publications récentes
Hi this Problem is also discussed in this thread: http://primefaces.prime.com.tr/forum/viewtopic.php?f=3&t=8005

I have the same problem, these are my dependencies:

<dependencies>
<dependency>
<groupId>javax.faces</groupId>
<artifactId>jsf-api</artifactId>
<version>2.1</version>
</dependency>
<dependency>
<groupId>com.sun.faces</groupId>
<artifactId>jsf-impl</artifactId>
<version>2.1.1-b04</version>
</dependency>
<dependency>
<groupId>org.primefaces</groupId>
<artifactId>primefaces</artifactId>
<version>3.0.M1</version>
</dependency>
<dependency>
<groupId>javax.portlet</groupId>
<artifactId>portlet-api</artifactId>
<version>2.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.portletfaces</groupId>
<artifactId>portletfaces-bridge</artifactId>
<version>2.0.0-RC1</version>
</dependency>
</dependencies>
thumbnail
Neil Griffin, modifié il y a 12 années.

RE: java.lang.ClassCastException: com.liferay.portlet.ResourceResponseImpl

Liferay Legend Publications: 2655 Date d'inscription: 27/07/05 Publications récentes
The stacktrace you provided at the primefaces forum indicates that the problem is with the Mojarra OnOffResponseWrapper. This class is not found in JSF 2.1, which means that you must have a JSF 2.0 version of the Mojarra jsf-impl.jar somewhere in the global classpath that should be removed.
PortletFaces Community Member, modifié il y a 12 années.

RE: java.lang.ClassCastException: com.liferay.portlet.ResourceResponseImpl

Regular Member Publications: 199 Date d'inscription: 03/04/12 Publications récentes
I have the same problem with the OnOffResponseWrapper.. I'm using a icefaces application in liferay.
My portlet worked till I updated the JSF 2.0.3 version to a JSF 2.1.x version. I replaced the jsf-api.jar and the jsf-impl.jar in my eclipse project and in the deploy folder of the tomcat.

When I saw this topic I replaced my old jsf 2.0.3 files back in the folders but the problem still remains :s. I'm really desparate.. I searched my whole computer for jsf-impl and jsf-api files and replaced them all to the jsf 2.0.3 version and I also tried replacing them all with the JSF 2.1. version..

I hope someone can help me emoticon
Thanks
Thomas Kevin, modifié il y a 12 années.

RE: java.lang.ClassCastException: com.liferay.portlet.ResourceResponseImpl

New Member Publications: 9 Date d'inscription: 05/05/11 Publications récentes
Hi kristof ,

Can you post the stack trace if possible and the version of portlet-faces bridge?

Quick check HttpServletResponseWrapper that can be enabled or disabled?




Regards
Kevin Thomas
Attune Infocom Inc
http://www.attuneinfocom.com
Email : contact@attuneinfocom.com
Liferay Portlet
thumbnail
Neil Griffin, modifié il y a 12 années.

RE: java.lang.ClassCastException: com.liferay.portlet.ResourceResponseImpl

Liferay Legend Publications: 2655 Date d'inscription: 27/07/05 Publications récentes
Hi Kristof,

Are you using Tomcat, or perhaps JBoss AS or GlassFish?

Neil