Forums de discussion

PrimePush counter example in WebLogic anyone?

thumbnail
Bernd Prager, modifié il y a 10 années.

PrimePush counter example in WebLogic anyone?

Junior Member Publications: 42 Date d'inscription: 20/12/12 Publications récentes
Hi,

I was wondering if anybody ever got the counter example of PrimePush on WebLogic 10.3.6 to work.
I got the counter portlet deployed and rendered, but when I hit the Count button I am receiving a
com.sun.faces.application.view.FaceletViewHandlingStrategy handleRenderException
, specifically at:
 SEVERE: Error Rendering View[/views/view.xhtml]
java.lang.NullPointerException
        at javax.servlet.http.Cookie.setDomain(Cookie.java:222)
        at com.liferay.faces.bridge.context.ExternalContextCompatImpl.addResponseCookie(ExternalContextCompatImpl.java:125)
        at com.sun.faces.context.flash.ELFlash.setCookie

(the full log file is attached).

Does anybody had any success with it?

I am using:
WebLogic 10.3.6
jrockit-jdk1.6.0
liferay-faces-bridge 3.1.1-ga2
JSF 2.1.20
Primefaces 3.5

Thank you for any suggestions.

Pièces jointes:

thumbnail
Neil Griffin, modifié il y a 10 années.

RE: PrimePush counter example in WebLogic anyone?

Liferay Legend Publications: 2655 Date d'inscription: 27/07/05 Publications récentes
When you get a chance, please try with Liferay Faces 3.1.2-ga3-SNAPSHOT jars, which are available from the Snapshot Repository. We recently upgraded to the JSF 2.1 API which might fix the problem.
thumbnail
Bernd Prager, modifié il y a 10 années.

RE: PrimePush counter example in WebLogic anyone?

Junior Member Publications: 42 Date d'inscription: 20/12/12 Publications récentes
Neil,
I tried 3.1.2-ga3-20130501 SNAPSHOT without any change in behavior. Unfortunately I am getting the exact same error.
thumbnail
Neil Griffin, modifié il y a 10 années.

RE: PrimePush counter example in WebLogic anyone?

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

When you get a chance, please take a look at FACES-1538 and let me know if you think it might be similar.

Thanks,

Neil
thumbnail
Bernd Prager, modifié il y a 10 années.

RE: PrimePush counter example in WebLogic anyone?

Junior Member Publications: 42 Date d'inscription: 20/12/12 Publications récentes
Neil,

I am using a Primeface command button. So it might be related.
	<h:body>
		<h:form id="form">
		<p:commandbutton value="Count" actionListener="#{counter.increment}" />
		</h:form>
	</h:body>

I can not easily change that, since the whole point of my POC is getting IPC and Ajax to work.

I also can't see if FACES-1538 is specific to the apps server.

Please note that this NPE is ONLY happen on WebLogic.
The same apps is running without errors on Tomcat.
(Only the atmosphere dependency was changed.)

Also if you look into the stack-trace I attached earlier you might see that there is a lot going back and forth between WebLogic and Liferay.
That could be a hint that this error is platform specific.

I hope this helps.

Thank you,
-- Bernd
thumbnail
Neil Griffin, modifié il y a 10 années.

RE: PrimePush counter example in WebLogic anyone?

Liferay Legend Publications: 2655 Date d'inscription: 27/07/05 Publications récentes
I would recommend that you try disabling the ETag filter since that has caused troubles with WebLogic in other scenarios.
thumbnail
Bernd Prager, modifié il y a 10 années.

RE: PrimePush counter example in WebLogic anyone?

Junior Member Publications: 42 Date d'inscription: 20/12/12 Publications récentes
Neil,

I have to correct myself. There are differences.
I build everything with new libs from your snapshot repository 20130502 versions and I am no longer getting NPEs. I now get:
12:22:30,322 DEBUG [BridgeContextImpl:284] encodeResourceURL fromURL=[http://localhost:7001/web/guest/home?p_p_id=ipcpub_WAR_ipcpub001_INSTANCE_ioeJPr84VeAk&amp;p_p_lifecycle=2&amp;p_p_state=normal&amp;p_p_mode=view&amp;p_p_cacheability=cacheLevelPage&amp;p_p_col_id=column-1&amp;p_p_col_count=0&amp;_ipcpub_WAR_ipcpub001_INSTANCE_ioeJPr84VeAk_javax.faces.resource=theme.css&amp;_ipcpub_WAR_ipcpub001_INSTANCE_ioeJPr84VeAk_ln=primefaces-aristo]
May 3, 2013 12:22:30 PM com.sun.faces.application.view.FaceletViewHandlingStrategy handleRenderException
SEVERE: Error Rendering View[/views/view.xhtml]
java.io.IOException: java.lang.UnsupportedOperationException
        at com.liferay.faces.bridge.renderkit.html_basic.HeadResponseWriterLiferayImpl.endElement(HeadResponseWriterLiferayImpl.java:94)
        at com.sun.faces.renderkit.html_basic.StylesheetRenderer.encodeEnd(StylesheetRenderer.java:112)
        at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:881)
        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1786)


The portlet is rendered regardless of this exception.

Let me go ahead and implement the IPC subscriber portlet. I will keep you posted.
Thank you,
-- Bernd
thumbnail
Bernd Prager, modifié il y a 10 années.

RE: PrimePush counter example in WebLogic anyone?

Junior Member Publications: 42 Date d'inscription: 20/12/12 Publications récentes
I forgot to attach the complete stack trace for your information.
thumbnail
Bernd Prager, modifié il y a 10 années.

RE: PrimePush counter example in WebLogic anyone?

Junior Member Publications: 42 Date d'inscription: 20/12/12 Publications récentes
I am getting now both portlets ipc publisher and subscriber rendered.
The subscriber does not respond to messages though.

I am getting an atmosphere error after a while though:
<may 3, 2013 3:26:57 pm edt> <error> <weblogicserver> <bea-000337> &lt;[STUCK] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "670" seconds working on the request "Workmanager: default, Version: 0, Scheduled=true, Started=true, Started time: 670448 ms
[
GET /ipc-pub/primepush/countervn47RGLSXYm1StLdvMjY2HhHh1JGN1hn5KztGZ0Y5qZJvjRDYQFm!1146111412!1367608182277?X-Atmosphere-tracking-id=0&amp;X-Atmosphere-Framework=1.0.8&amp;X-Atmosphere-Transport=long-polling&amp;X-Cache-Date=0&amp;_=1367608546710 HTTP/1.1
Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.64 Safari/537.31
Accept: */*
Referer: http://localhost:7001/web/guest/ipc
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8,de;q=0.6
Accept-Charset: UTF-8,*;q=0.5
Cookie: csfcfc=5Xfn_; COOKIE_SUPPORT=true; LFR_SESSION_STATE_10464=1358193870989; LFR_SESSION_STATE_10501=1358278542717; LFR_SESSION_STATE_10382=1358286995593; LFR_SESSION_STATE_10491=1358287704186; LFR_SESSION_STATE_10429=1367513912438; LFR_SESSION_STATE_10196=1367516353978; LFR_SESSION_STATE_10427=expired; COMPANY_ID=10154; ID=61744e48666545775134673d; USER_UUID=vqajaJnd0QsMuLlniI5AueH/LhpuHA6M; LOGIN=6265726e645f7072616765724073616e64702e636f6d; PASSWORD=61795338684d59723842413d; REMEMBER_ME=true; SCREEN_NAME=754f69336438466b5364773d; ADMINCONSOLESESSION=5S2XRGLHsGQWLS1Tn9FnngHrCFRQhYXJJb1b1TjDGh1d1hP9Pdh9!1146111412; GUEST_LANGUAGE_ID=en_US; JSESSIONID=vn47RGLSXYm1StLdvMjY2HhHh1JGN1hn5KztGZ0Y5qZJvjRDYQFm!1146111412

]", which is more than the configured time (StuckThreadMaxTime) of "600" seconds. Stack trace:
Thread-89 "[STUCK] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'" <alive, suspended, parked, priority="1," daemon> {
    sun.misc.Unsafe.park(Unsafe.java:???)
    java.util.concurrent.locks.LockSupport.park(LockSupport.java:154)
    java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:811)
    java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:957)
    java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1278)
    java.util.concurrent.CountDownLatch.await(CountDownLatch.java:207)
    org.atmosphere.container.BlockingIOCometSupport.suspend(BlockingIOCometSupport.java:145)
    org.atmosphere.container.BlockingIOCometSupport.service(BlockingIOCometSupport.java:99)
    org.atmosphere.cpr.AtmosphereFramework.doCometSupport(AtmosphereFramework.java:1472)
    org.atmosphere.cpr.AtmosphereServlet.doPost(AtmosphereServlet.java:299)
    org.atmosphere.cpr.AtmosphereServlet.doGet(AtmosphereServlet.java:285)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:700)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:815)
    weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:224)
    weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:108)
    weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:207)
    weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
    weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:55)
    com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:71)
    com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:71)
    sun.reflect.GeneratedMethodAccessor456.invoke(Unknown Source)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:575)
    com.liferay.portal.kernel.bean.ClassLoaderBeanHandler.invoke(ClassLoaderBeanHandler.java:43)
    $Proxy471.doFilter(Unknown Source)
    com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:71)
    com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:130)
    com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:71)
    com.liferay.portal.kernel.servlet.PortalClassLoaderFilter.doFilter(PortalClassLoaderFilter.java:51)
    com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:199)
    com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:71)
    com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:58)
    weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:55)
    weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:25)
    weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:55)
    weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3702)
    weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3696)
    weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:308)
    weblogic.security.service.SecurityManager.runAs(SecurityManager.java:116)
    weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2209)
    weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2131)
    weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1457)
    weblogic.work.ExecuteThread.execute(ExecuteThread.java:250)
    weblogic.work.ExecuteThread.run(ExecuteThread.java:213)
}
</alive,></bea-000337></weblogicserver></error></may>
thumbnail
Neil Griffin, modifié il y a 10 années.

RE: PrimePush counter example in WebLogic anyone?

Liferay Legend Publications: 2655 Date d'inscription: 27/07/05 Publications récentes
Is the original problem (NullPointerException at javax.servlet.http.Cookie.setDomain) fixed?
thumbnail
Bernd Prager, modifié il y a 10 années.

RE: PrimePush counter example in WebLogic anyone?

Junior Member Publications: 42 Date d'inscription: 20/12/12 Publications récentes
Yes, it is Neil.
thumbnail
Neil Griffin, modifié il y a 10 années.

RE: PrimePush counter example in WebLogic anyone?

Liferay Legend Publications: 2655 Date d'inscription: 27/07/05 Publications récentes
Is it still true that it is working 100% with Tomcat, and that this is a WebLogic-only problem? Also, did you try disabling the ETag filter?
thumbnail
Bernd Prager, modifié il y a 10 années.

RE: PrimePush counter example in WebLogic anyone?

Junior Member Publications: 42 Date d'inscription: 20/12/12 Publications récentes
That is still true Neil.
And yes, I followed your advice and set com.liferay.portal.servlet.filters.etag.ETagFilter=false in portal-ext.properties.
thumbnail
Neil Griffin, modifié il y a 10 années.

RE: PrimePush counter example in WebLogic anyone?

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

At this point, since it works on Tomcat and not WebLogic, I would recommend that you create an issue at the Atmosphere issue tracker.

Kind Regards,

Neil
thumbnail
Bernd Prager, modifié il y a 10 années.

RE: PrimePush counter example in WebLogic anyone?

Junior Member Publications: 42 Date d'inscription: 20/12/12 Publications récentes
The original NPE happens only with every mojarra version after 2.1.17. Older version don't throw.
antonio perez, modifié il y a 10 années.

RE: PrimePush counter example in WebLogic anyone?

New Member Publications: 15 Date d'inscription: 07/02/13 Publications récentes
I have the same problem Error Rendering View[/views/view.xhtml] java.lang.NullPointerException at javax.servlet.http.Cookie.setDomain(Cookie.java:222) with
Glassfish 3.1.2, jdk1.6.0_26, liferay-faces-bridge 3.1.1-ga2, richfaces 4.3.0 and jsf 2.1.22.

Someone have a solution? I would like to not change the jsf version.

Thanks.
thumbnail
Neil Griffin, modifié il y a 10 années.

RE: PrimePush counter example in WebLogic anyone?

Liferay Legend Publications: 2655 Date d'inscription: 27/07/05 Publications récentes
@Antonio: Please see my comments on FACES-1538.