Bartosz Spyrko-Śmietanko created WFCORE-1368:
------------------------------------------------
Summary: Improve readability of missing dependency logs
Key: WFCORE-1368
URL:
https://issues.jboss.org/browse/WFCORE-1368
Project: WildFly Core
Issue Type: Enhancement
Reporter: Bartosz Spyrko-Śmietanko
Assignee: Dennis Reed
When deploying an ear using initialize-in-order option, if one of the subdeployments
contains an EJB that depends on an EJB from another subdeployment and the dependency
subdeployment fails log output makes it hard to understand the root cause.
Structure of deployment is as follows:
{noformat}
reproducer.ear
|- service-locator.jar
| |- ServiceLocator (Stateless EJB)
| |- TestQueue (JNDI Resource)
|- client.jar
|- TestEjb (Stateless EJB)
|- ServiceLocator
{noformat}
If the TestQueue JNDI resource cannot be injected in the ServiceLocator, the deployment
failure output lists a number of missing services per each EJB in the dependant
subdeployment (.ORB, .HandleDelegate, .ValidatorFactory, etc).
When the dependant subdeployment has a larger number of EJBs the log output very quickly
becomes hard to read.
Example with a single dependant EJB:
{noformat}
14:27:43,092 ERROR [org.jboss.as.controller.management-operation]
(management-handler-thread - 2) WFLYCTL0013: Operation ("deploy") failed -
address: ({"deployment" => "reproducer-1.0-SNAPSHOT.ear"}) -
failure description: {
"WFLYCTL0180: Services with missing/unavailable dependencies" => [
"jboss.deployment.subunit.\"reproducer-1.0-SNAPSHOT.ear\".\"client.jar\".batch.environment
is missing
[jboss.deployment.subunit.\"reproducer-1.0-SNAPSHOT.ear\".\"client.jar\".beanmanager]",
"jboss.naming.context.java.comp.testEar.client.TestEjb.ValidatorFactory is
missing [jboss.naming.context.java.comp.testEar.client.TestEjb]",
"jboss.naming.context.java.comp.testEar.client.TestEjb.ORB is missing
[jboss.naming.context.java.comp.testEar.client.TestEjb]",
"jboss.naming.context.java.comp.testEar.client.TestEjb.HandleDelegate is
missing [jboss.naming.context.java.comp.testEar.client.TestEjb]",
"jboss.deployment.subunit.\"reproducer-1.0-SNAPSHOT.ear\".\"client.jar\".weld.weldClassIntrospector
is missing
[jboss.deployment.subunit.\"reproducer-1.0-SNAPSHOT.ear\".\"client.jar\".beanmanager]",
"jboss.deployment.unit.\"reproducer-1.0-SNAPSHOT.ear\".deploymentCompleteService
is missing
[jboss.deployment.subunit.\"reproducer-1.0-SNAPSHOT.ear\".\"client.jar\".deploymentCompleteService]",
"jboss.naming.context.java.comp.testEar.client.TestEjb.InstanceName is
missing [jboss.naming.context.java.comp.testEar.client.TestEjb]",
"jboss.naming.context.java.comp.testEar.client.TestEjb.Validator is missing
[jboss.naming.context.java.comp.testEar.client.TestEjb]",
"jboss.naming.context.java.comp.testEar.service-locator.test_ServiceLocator.env.queue.TestQueue
is missing [jboss.naming.context.java.jboss.resources.queue.TestQueue]",
"jboss.naming.context.java.comp.testEar.client.TestEjb.InAppClientContainer
is missing [jboss.naming.context.java.comp.testEar.client.TestEjb]"
],
"WFLYCTL0288: One or more services were unable to start due to one or more
indirect dependencies not being available." => {
"Services that were unable to start:" => [
"jboss.deployment.subunit.\"reproducer-1.0-SNAPSHOT.ear\".\"client.jar\".INSTALL",
"jboss.deployment.subunit.\"reproducer-1.0-SNAPSHOT.ear\".\"service-locator.jar\".CLEANUP",
"jboss.deployment.subunit.\"reproducer-1.0-SNAPSHOT.ear\".\"service-locator.jar\".component.test_ServiceLocator.JndiBindingsService",
"jboss.deployment.subunit.\"reproducer-1.0-SNAPSHOT.ear\".\"service-locator.jar\".component.test_ServiceLocator.START",
"jboss.deployment.subunit.\"reproducer-1.0-SNAPSHOT.ear\".\"service-locator.jar\".deploymentCompleteService",
"jboss.deployment.subunit.\"reproducer-1.0-SNAPSHOT.ear\".\"service-locator.jar\".jndiDependencyService",
"jboss.deployment.subunit.\"reproducer-1.0-SNAPSHOT.ear\".\"service-locator.jar\".moduleDeploymentRuntimeInformationStart",
"jboss.deployment.unit.\"reproducer-1.0-SNAPSHOT.ear\".CLEANUP"
]
{noformat}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)