Bug 900711 (JBPAPP6-1399) - All classes that implement AsyncListener are treated as components causing JBAS011006
Summary: All classes that implement AsyncListener are treated as components causing JB...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: JBPAPP6-1399
Product: JBoss Enterprise Application Platform 6
Classification: JBoss
Component: Other
Version: 6.0.0
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: ER2
: EAP 6.2.0
Assignee: Rémy Maucherat
QA Contact:
URL: http://jira.jboss.org/jira/browse/JBP...
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-07-16 23:06 UTC by Brad Maxwell
Modified: 2018-12-02 16:45 UTC (History)
9 users (show)

Fixed In Version:
Clone Of:
Environment:
JBoss EAP 6.0 GA, web services subsystem removed, war deployed containing Metro or CXF web services implementation
Last Closed: 2013-12-15 16:21:47 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker AS7-5178 0 Major Closed Reduce the log level of optional components failing to start log message (JBAS011006 message id) 2020-02-21 04:43:53 UTC
Red Hat Issue Tracker JBPAPP6-1399 0 Major Closed All classes that implement AsyncListener are treated as components causing JBAS011006 2020-02-21 04:43:53 UTC

Description Brad Maxwell 2012-07-16 23:06:52 UTC
Help Desk Ticket Reference: https://na7.salesforce.com/500A000000Au90w
project_key: JBPAPP6

It tries to create this class if CXF is packaged in the war: org.apache.cxf.transport.http.Servlet3ContinuationProvider$Servlet3Continuation 

And this stack is logged as a warning:

11:08:40,879 INFO  [org.jboss.as.osgi] (MSC service thread 1-1) JBAS011907: Register module: Module "deployment.test.war:main" from Service Module Loader
11:08:40,905 WARN  [org.jboss.as.ee] (MSC service thread 1-6) JBAS011006: Not installing optional component org.apache.cxf.transport.http.Servlet3ContinuationProvider$Servlet3Continuation due to exception: org.jboss.as.server.deployment.DeploymentUnitProcessingException: JBAS011054: Could not find default constructor for class org.apache.cxf.transport.http.Servlet3ContinuationProvider$Servlet3Continuation
  at org.jboss.as.ee.component.ComponentDescription$DefaultComponentConfigurator.configure(ComponentDescription.java:606) [jboss-as-ee-7.1.2.Final-redhat-1.jar:7.1.2.Final-redhat-1]
  at org.jboss.as.ee.component.deployers.EEModuleConfigurationProcessor.deploy(EEModuleConfigurationProcessor.java:83) [jboss-as-ee-7.1.2.Final-redhat-1.jar:7.1.2.Final-redhat-1]
  at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:116)
  at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
  at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
  at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [rt.jar:1.6.0_30]
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [rt.jar:1.6.0_30]
  at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_30]

If Metro is packaged in the war, it tries to load com.sun.xml.ws.transport.http.servlet.WSAsyncListener and logs a warning with this stack: 

16:48:57,302 WARN  [org.jboss.as.ee] (MSC service thread 1-1) JBAS011006: Not installing optional component com.sun.xml.ws.transport.http.servlet.WSAsyncListener$1 due to exception: org.jboss.as.server.deployment.DeploymentUnitProcessingException: JBAS011054: Could not find default constructor for class com.sun.xml.ws.transport.http.servlet.WSAsyncListener$1
  at org.jboss.as.ee.component.ComponentDescription$DefaultComponentConfigurator.configure(ComponentDescription.java:606) [jboss-as-ee-7.1.2.Final-redhat-1.jar:7.1.2.Final-redhat-1]
  at org.jboss.as.ee.component.deployers.EEModuleConfigurationProcessor.deploy(EEModuleConfigurationProcessor.java:83) [jboss-as-ee-7.1.2.Final-redhat-1.jar:7.1.2.Final-redhat-1]
  at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:116)
  at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
  at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
  at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [rt.jar:1.6.0_30]
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [rt.jar:1.6.0_30]
  at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_30]

Comment 1 Brad Maxwell 2012-07-16 23:06:53 UTC
Link: Added: This issue Cloned from AS7-5178


Comment 2 Brad Maxwell 2012-07-16 23:07:25 UTC
Workflow: Removed: GIT Pull Request workflow  Added: jira
Security: Added: Public
Docs QE Status: Added: NEW


Comment 3 Brad Maxwell 2012-07-16 23:09:13 UTC
Link: Added: This issue incorporates AS7-5178


Comment 4 Rémy Maucherat 2012-07-17 08:04:13 UTC
Ok, so this is about the EE subsystem, not the web subsystem. But the async listeners are really components [they can be injected, obviously], so there's probably nothing wrong here.

Comment 5 Brad Maxwell 2012-07-30 15:24:40 UTC
I didn't see an EE so I'm marking Other.  David and I had been discussing this a week ago and he seemed to think it was a bug.

Comment 6 Brad Maxwell 2012-09-05 20:22:58 UTC
Help Desk Ticket Reference: Added: https://na7.salesforce.com/500A000000Au90w


Comment 7 RH Bugzilla Integration 2012-10-17 08:21:30 UTC
Bugzilla Update: Added: Perform


Comment 8 RH Bugzilla Integration 2012-10-17 08:21:31 UTC
Bugzilla References: Added: https://bugzilla.redhat.com/show_bug.cgi?id=852679


Comment 9 Anne-Louise Tangring 2012-11-13 20:57:54 UTC
Docs QE Status: Removed: NEW 


Comment 10 JBoss JIRA Server 2013-01-25 07:59:38 UTC
RH Bugzilla Integration <no-reply> updated the status of jira JBPAPP6-1399 to Closed

Comment 11 Rostislav Svoboda 2013-02-25 07:31:53 UTC
Hi. I there plan to include fix for this item in EAP 610 ?

If yes, jboss-eap-6.1.0 flag must be selected to enter 3-ACK process. Please set pm, dev, qa acks to '?' too.

Comment 12 Osamu Nagano 2013-06-25 02:24:16 UTC
The same WARN level log and stack trace happens with org.springframework.web.context.request.async.StandardServletAsyncWebRequest.  Both of Servlet3Continuation and StandardServletAsyncWebRequest implement javax.servlet.AsyncListener and all instances of the interface are expected to have the default constructor by the current implementation (due to https://issues.jboss.org/browse/JBWEB-224).

But I think it's a strong assumption.  Spec says some of AsyncListener instance must have a zero argument constructor [1], but I guess not all instances must.  Shouldn't we expect the default constructor only for annotated ones like @ManagedBean?

[1] http://docs.oracle.com/javaee/6/api/javax/servlet/AsyncContext.html#createListener%28java.lang.Class%29

Comment 14 Osamu Nagano 2013-07-01 01:45:56 UTC
As discussion done in WFLY-924 [1], the stacktrace was moved into DEBUG level in the upstream.  Make sure we'll have it in the next release of EAP.

[1] https://issues.jboss.org/browse/WFLY-924 a.k.a. AS7-5178

Comment 15 Osamu Nagano 2013-09-11 08:37:26 UTC
Backport the upstream fix into jboss-eap/6.x.
https://github.com/jbossas/jboss-eap/pull/390

Comment 17 Jan Martiska 2013-10-07 08:00:51 UTC
Verified in EAP 6.2.0.ER4.


Note You need to log in before you can comment on or make changes to this bug.