[jboss-jira] [JBoss JIRA] (AS7-6585) too many classes on classpath break RAR deployments without deployment descriptor
Marcel Šebek (JIRA)
jira-events at lists.jboss.org
Thu Feb 21 08:57:57 EST 2013
Marcel Šebek created AS7-6585:
---------------------------------
Summary: too many classes on classpath break RAR deployments without deployment descriptor
Key: AS7-6585
URL: https://issues.jboss.org/browse/AS7-6585
Project: Application Server 7
Issue Type: Bug
Components: JCA
Affects Versions: 7.1.4.Final (EAP)
Reporter: Marcel Šebek
Assignee: Jesper Pedersen
An EAR containing a RAR and a large number of classes cannot be deployed, the exception depends on jboss version. For example, the latest 7.1 snapshot produces the following:
14:37:57,354 INFO [org.jboss.as.server.deployment] (MSC service thread 1-1) JBAS015876: Starting deployment of "test-ear.ear"
14:37:57,499 INFO [org.jboss.as.server.deployment] (MSC service thread 1-4) JBAS015876: Starting deployment of "test-rar-2.0.0-SNAPSHOT.rar"
14:37:57,499 INFO [org.jboss.as.server.deployment] (MSC service thread 1-2) JBAS015876: Starting deployment of "test-ejb-2.0.0-SNAPSHOT.jar"
14:37:57,807 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-2) MSC00001: Failed to start service jboss.deployment.subunit."test-ear.ear"."test-rar-2.0.0-SNAPSHOT.rar".INSTALL: org.jboss.msc.service.StartException in service jboss.deployment.subunit."test-ear.ear"."test-rar-2.0.0-SNAPSHOT.rar".INSTALL: JBAS018733: Failed to process phase INSTALL of subdeployment "test-rar-2.0.0-SNAPSHOT.rar" of deployment "test-ear.ear"
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:123) [jboss-as-server-7.1.4.Final-SNAPSHOT.jar:7.1.4.Final-SNAPSHOT]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_13]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_13]
at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_13]
Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: java.lang.NullPointerException
at org.jboss.as.connector.deployers.ra.processors.ParsedRaDeploymentProcessor.deploy(ParsedRaDeploymentProcessor.java:185)
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:116) [jboss-as-server-7.1.4.Final-SNAPSHOT.jar:7.1.4.Final-SNAPSHOT]
... 5 more
Caused by: java.lang.NullPointerException
at org.jboss.jca.common.metadata.ra.common.ResourceAdapter1516Impl.validate(ResourceAdapter1516Impl.java:351)
at org.jboss.jca.common.metadata.ra.common.ConnectorAbstractmpl.validate(ConnectorAbstractmpl.java:332)
at org.jboss.as.connector.deployers.ra.processors.ParsedRaDeploymentProcessor.deploy(ParsedRaDeploymentProcessor.java:142)
... 6 more
14:37:58,104 INFO [org.jboss.as.server] (DeploymentScanner-threads - 2) JBAS015870: Deploy of deployment "test-ear.ear" was rolled back with failure message {"JBAS014671: Failed services" => {"jboss.deployment.subunit.\"test-ear.ear\".\"test-rar-2.0.0-SNAPSHOT.rar\".INSTALL" => "org.jboss.msc.service.StartException in service jboss.deployment.subunit.\"test-ear.ear\".\"test-rar-2.0.0-SNAPSHOT.rar\".INSTALL: JBAS018733: Failed to process phase INSTALL of subdeployment \"test-rar-2.0.0-SNAPSHOT.rar\" of deployment \"test-ear.ear\"
Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: java.lang.NullPointerException
Caused by: java.lang.NullPointerException"},"JBAS014771: Services with missing/unavailable dependencies" => ["jboss.deployment.subunit.\"test-ear.ear\".\"test-ejb-2.0.0-SNAPSHOT.jar\".moduleDeploymentRuntimeInformation Missing[JBAS014861: <one or more transitive dependencies>]","jboss.deployment.unit.\"test-ear.ear\".CLEANUP Missing[JBAS014861: <one or more transitive dependencies>]","jboss.deployment.subunit.\"test-ear.ear\".\"test-ejb-2.0.0-SNAPSHOT.jar\".component.InboundMDB.CREATE Missing[jboss.ra.\"test-ear.ear#test-rar-2.0.0-SNAPSHOT\"]","jboss.deployment.subunit.\"test-ear.ear\".\"test-ejb-2.0.0-SNAPSHOT.jar\".CLEANUP Missing[JBAS014861: <one or more transitive dependencies>]","jboss.deployment.subunit.\"test-ear.ear\".\"test-ejb-2.0.0-SNAPSHOT.jar\".component.InboundMDB.START Missing[JBAS014861: <one or more transitive dependencies>]","jboss.deployment.subunit.\"test-ear.ear\".\"test-ejb-2.0.0-SNAPSHOT.jar\".component.InboundMDB.TimedObjectInvoker Missing[JBAS014861: <one or more transitive dependencies>]","jboss.deployment.subunit.\"test-ear.ear\".\"test-ejb-2.0.0-SNAPSHOT.jar\".component.InboundMDB.ejb3.timerService Missing[JBAS014861: <one or more transitive dependencies>]","jboss.deployment.subunit.\"test-ear.ear\".\"test-ejb-2.0.0-SNAPSHOT.jar\".component.InboundMDB.VIEW.\"test.TestEventListener\".MESSAGE_ENDPOINT Missing[JBAS014861: <one or more transitive dependencies>]"]}
14:37:58,141 INFO [org.jboss.as.server.deployment] (MSC service thread 1-2) JBAS015877: Stopped deployment test-ejb-2.0.0-SNAPSHOT.jar in 38ms
14:37:58,142 INFO [org.jboss.as.server.deployment] (MSC service thread 1-5) JBAS015877: Stopped deployment test-rar-2.0.0-SNAPSHOT.rar in 39ms
14:37:58,149 INFO [org.jboss.as.server.deployment] (MSC service thread 1-4) JBAS015877: Stopped deployment test-ear.ear in 46ms
14:37:58,152 ERROR [org.jboss.as.server.deployment.scanner] (DeploymentScanner-threads - 1) {"JBAS014653: Composite operation failed and was rolled back. Steps that failed:" => {"Operation step-2" => {"JBAS014671: Failed services" => {"jboss.deployment.subunit.\"test-ear.ear\".\"test-rar-2.0.0-SNAPSHOT.rar\".INSTALL" => "org.jboss.msc.service.StartException in service jboss.deployment.subunit.\"test-ear.ear\".\"test-rar-2.0.0-SNAPSHOT.rar\".INSTALL: JBAS018733: Failed to process phase INSTALL of subdeployment \"test-rar-2.0.0-SNAPSHOT.rar\" of deployment \"test-ear.ear\"
Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: java.lang.NullPointerException
Caused by: java.lang.NullPointerException"},"JBAS014771: Services with missing/unavailable dependencies" => ["jboss.deployment.subunit.\"test-ear.ear\".\"test-ejb-2.0.0-SNAPSHOT.jar\".moduleDeploymentRuntimeInformation Missing[JBAS014861: <one or more transitive dependencies>]","jboss.deployment.unit.\"test-ear.ear\".CLEANUP Missing[JBAS014861: <one or more transitive dependencies>]","jboss.deployment.subunit.\"test-ear.ear\".\"test-ejb-2.0.0-SNAPSHOT.jar\".component.InboundMDB.CREATE Missing[jboss.ra.\"test-ear.ear#test-rar-2.0.0-SNAPSHOT\"]","jboss.deployment.subunit.\"test-ear.ear\".\"test-ejb-2.0.0-SNAPSHOT.jar\".CLEANUP Missing[JBAS014861: <one or more transitive dependencies>]","jboss.deployment.subunit.\"test-ear.ear\".\"test-ejb-2.0.0-SNAPSHOT.jar\".component.InboundMDB.START Missing[JBAS014861: <one or more transitive dependencies>]","jboss.deployment.subunit.\"test-ear.ear\".\"test-ejb-2.0.0-SNAPSHOT.jar\".component.InboundMDB.TimedObjectInvoker Missing[JBAS014861: <one or more transitive dependencies>]","jboss.deployment.subunit.\"test-ear.ear\".\"test-ejb-2.0.0-SNAPSHOT.jar\".component.InboundMDB.ejb3.timerService Missing[JBAS014861: <one or more transitive dependencies>]","jboss.deployment.subunit.\"test-ear.ear\".\"test-ejb-2.0.0-SNAPSHOT.jar\".component.InboundMDB.VIEW.\"test.TestEventListener\".MESSAGE_ENDPOINT Missing[JBAS014861: <one or more transitive dependencies>]"]}}}
However, the same event (with slightly more readable exception) occurs in 7.2 snapshot too. An EAR that exhibits this is attached. If you comment out maven dependencies, you will be able to deploy the same EAR. If you put different dependencies, you will get the same error again. The problem seems to depend only on the classpath size, more classes causes the problem to occur more likely.
The problem is that when JCA container builds ra.xml from JCA 1.6 annotations, for some reason the content of <resourceadapter-class> tag is null (the string "null"). As a workaround for resource adapters with large classpath, one can supply a deployment descriptor with just <resourceadapter-class> tag containing the correct value.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list