[jboss-jira] [JBoss JIRA] (AS7-2605) Concurrency issue in WS AbstractInvocationHandlerEJB
Stuart Douglas (Resolved) (JIRA)
jira-events at lists.jboss.org
Sun Nov 13 18:13:40 EST 2011
[ https://issues.jboss.org/browse/AS7-2605?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Stuart Douglas resolved AS7-2605.
---------------------------------
Assignee: Stuart Douglas (was: Richard Opalka)
Resolution: Done
I just implemented a slightly different fix for this, that does not require synchronisation on every call. By making sure that both the view and the reference are non-null in the double checked locking block.
> Concurrency issue in WS AbstractInvocationHandlerEJB
> ----------------------------------------------------
>
> Key: AS7-2605
> URL: https://issues.jboss.org/browse/AS7-2605
> Project: Application Server 7
> Issue Type: Bug
> Components: Web Services
> Reporter: Alessio Soldano
> Assignee: Stuart Douglas
> Fix For: 7.1.0.Beta1
>
>
> Highly concurrent invocations to the same ejb3 ws endpoint can lead to:
> 14:48:12,321 ERROR [org.jboss.as.webservices.invocation.InvocationHandlerEJB3] (http-localhost.localdomain-127.0.0.1-8080-30) Method invocation failed with exception: null: java.lang.NullPointerException
> at org.jboss.as.webservices.invocation.AbstractInvocationHandlerEJB.invoke(AbstractInvocationHandlerEJB.java:120)
> at org.jboss.wsf.stack.cxf.JBossWSInvoker._invokeInternal(JBossWSInvoker.java:169)
> at org.jboss.wsf.stack.cxf.JBossWSInvoker.invoke(JBossWSInvoker.java:117)
> at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:58)
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) [:1.6.0_21]
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) [:1.6.0_21]
> at java.util.concurrent.FutureTask.run(FutureTask.java:138) [:1.6.0_21]
> at org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
> at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:106)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:263)
> at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
> at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:206)
> at org.jboss.wsf.stack.cxf.RequestHandlerImpl.handleHttpRequest(RequestHandlerImpl.java:91)
> at org.jboss.wsf.stack.cxf.transport.ServletHelper.callRequestHandler(ServletHelper.java:174)
> at org.jboss.wsf.stack.cxf.CXFServletExt.invoke(CXFServletExt.java:87)
> at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:184)
> at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:107)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:754) [jboss-servlet-api_3.0_spec-1.0.0.Final.jar:1.0.0.Final]
> at org.jboss.wsf.stack.cxf.CXFServletExt.service(CXFServletExt.java:135)
> at org.jboss.wsf.spi.deployment.WSFServlet.service(WSFServlet.java:140) [jbossws-spi.jar:2.0.0-SNAPSHOT]
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:847) [jboss-servlet-api_3.0_spec-1.0.0.Final.jar:1.0.0.Final]
> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:329)
> at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248)
> at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275)
> at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161)
> at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:151)
> at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:155)
> 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:362)
> at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877)
> at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:671)
> at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930)
> at java.lang.Thread.run(Thread.java:619) [:1.6.0_21]
> This is intermittently reproduced on JBossWS hudson, for instance see http://jbossws.jboss.org:8180/hudson/job/CXF-CORE-AS-7.1.0-SPRING-SUN-JDK-6/38/consoleFull at "14:48:12,321" (jbws2934 testcase)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list