]
jaikiran pai edited comment on WFLY-6600 at 5/28/16 2:18 AM:
-------------------------------------------------------------
I just sent a PR
which should prevent this
NPE
was (Author: jaikiran):
I just sent a PR which should prevent this NPE
NPE thrown during EAR deployment
--------------------------------
Key: WFLY-6600
URL:
https://issues.jboss.org/browse/WFLY-6600
Project: WildFly
Issue Type: Bug
Components: Web (Undertow)
Affects Versions: 10.0.0.Final
Reporter: Matthew Casperson
We deploy an EAR file to a Wildfly domain with two slaves. On one slave, we'll
frequently see this exception:
{code}
[Server:main-server] 2016-05-08 16:06:13+1000 INFO [[org.jboss.as.server]]
[[ServerService Thread Pool -- 359]] WFLYSRV0016: Replaced deployment
"services.war" with deployment "services.war"
[Server:main-server] 2016-05-09 06:05:08+1000 ERROR
[[org.jboss.as.controller.management-operation]] [[ServerService Thread Pool -- 384]]
WFLYCTL0013: Operation ("read-attribute") failed - address: ([
[Server:main-server] ("deployment" =>
"OnlineSystemsApplications.ear"),
[Server:main-server] ("subdeployment" => "systemcheck.war"),
[Server:main-server] ("subsystem" => "undertow"),
[Server:main-server] ("servlet" =>
"javax.ws.rs.core.Application")
[Server:main-server] ]): java.lang.NullPointerException
[Server:main-server] at
org.wildfly.extension.undertow.DeploymentServletDefinition$AbstractMetricsHandler.execute(DeploymentServletDefinition.java:125)
[Server:main-server] at
org.jboss.as.controller.operations.global.ReadAttributeHandler.doExecuteInternal(ReadAttributeHandler.java:174)
[Server:main-server] at
org.jboss.as.controller.operations.global.ReadAttributeHandler.doExecute(ReadAttributeHandler.java:137)
[Server:main-server] at
org.jboss.as.controller.operations.global.GlobalOperationHandlers$AbstractMultiTargetHandler.execute(GlobalOperationHandlers.java:263)
[Server:main-server] at
org.jboss.as.controller.operations.global.GlobalOperationHandlers$AvailableResponseWrapper.execute(GlobalOperationHandlers.java:933)
[Server:main-server] at
org.jboss.as.controller.AbstractOperationContext.executeStep(AbstractOperationContext.java:890)
[Server:main-server] at
org.jboss.as.controller.AbstractOperationContext.processStages(AbstractOperationContext.java:659)
[Server:main-server] at
org.jboss.as.controller.AbstractOperationContext.executeOperation(AbstractOperationContext.java:370)
[Server:main-server] at
org.jboss.as.controller.OperationContextImpl.executeOperation(OperationContextImpl.java:1344)
[Server:main-server] at
org.jboss.as.controller.ModelControllerImpl.internalExecute(ModelControllerImpl.java:392)
[Server:main-server] at
org.jboss.as.controller.ModelControllerImpl.execute(ModelControllerImpl.java:217)
[Server:main-server] at
org.jboss.as.controller.remote.TransactionalProtocolOperationHandler.internalExecute(TransactionalProtocolOperationHandler.java:247)
[Server:main-server] at
org.jboss.as.controller.remote.TransactionalProtocolOperationHandler$ExecuteRequestHandler.doExecute(TransactionalProtocolOperationHandler.java:185)
[Server:main-server] at
org.jboss.as.controller.remote.TransactionalProtocolOperationHandler$ExecuteRequestHandler$1.run(TransactionalProtocolOperationHandler.java:138)
[Server:main-server] at
org.jboss.as.controller.remote.TransactionalProtocolOperationHandler$ExecuteRequestHandler$1.run(TransactionalProtocolOperationHandler.java:134)
[Server:main-server] at java.security.AccessController.doPrivileged(Native Method)
[Server:main-server] at javax.security.auth.Subject.doAs(Subject.java:360)
[Server:main-server] at
org.jboss.as.controller.AccessAuditContext.doAs(AccessAuditContext.java:81)
[Server:main-server] at
org.jboss.as.controller.remote.TransactionalProtocolOperationHandler$ExecuteRequestHandler$2$1.run(TransactionalProtocolOperationHandler.java:157)
[Server:main-server] at
org.jboss.as.controller.remote.TransactionalProtocolOperationHandler$ExecuteRequestHandler$2$1.run(TransactionalProtocolOperationHandler.java:153)
[Server:main-server] at java.security.AccessController.doPrivileged(Native Method)
[Server:main-server] at
org.jboss.as.controller.remote.TransactionalProtocolOperationHandler$ExecuteRequestHandler$2.execute(TransactionalProtocolOperationHandler.java:153)
[Server:main-server] at
org.jboss.as.protocol.mgmt.AbstractMessageHandler$ManagementRequestContextImpl$1.doExecute(AbstractMessageHandler.java:363)
[Server:main-server] at
org.jboss.as.protocol.mgmt.AbstractMessageHandler$AsyncTaskRunner.run(AbstractMessageHandler.java:472)
[Server:main-server] at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
[Server:main-server] at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
[Server:main-server] at java.lang.Thread.run(Thread.java:745)
[Server:main-server] at org.jboss.threads.JBossThread.run(JBossThread.java:320)
{code}
At the same time we'll see this on the second node
{code}
[Server:main-server] 2016-05-06 16:17:59+1000 ERROR
[[org.jboss.as.controller.management-operation]] [[ServerService Thread Pool -- 276]]
WFLYCTL0190: Step handler org.jboss.as.server.deployment.DeploymentHandlerUtil$4@14bd8919
for operation {"operation" =>
"full-replace-deployment","name" =>
"OnlineSystemsApplications.ear","enabled" =>
true,"content" => [{"hash" => bytes { 0x73, 0xec, 0x83, 0x82,
0xb6, 0x67, 0x2d, 0x92, 0x36, 0x7a, 0xb7, 0x7c, 0x7a, 0x4e, 0xc4, 0x93, 0x00, 0xc1, 0xf3,
0xc3 }}],"operation-headers" => {"access-mechanism" =>
"NATIVE","domain-uuid" =>
"76dbe681-46d0-4f2e-a4c7-82f615919ff0"},"address" =>
[],"runtime-name" => undefined,"persistent" =>
true,"owner" => undefined} at address [] failed handling operation rollback
-- java.util.NoSuchElementException: No child 'name' exists:
java.util.NoSuchElementException: No child 'name' exists
[Server:main-server] at org.jboss.dmr.ModelValue.requireChild(ModelValue.java:377)
[Server:main-server] at
org.jboss.dmr.ObjectModelValue.requireChild(ObjectModelValue.java:299)
[Server:main-server] at org.jboss.dmr.ModelNode.require(ModelNode.java:870)
[Server:main-server] at
org.jboss.as.server.deployment.DeploymentHandlerUtil$4$1.handleResult(DeploymentHandlerUtil.java:277)
[Server:main-server] at
org.jboss.as.controller.AbstractOperationContext$Step.invokeResultHandler(AbstractOperationContext.java:1384)
[Server:main-server] at
org.jboss.as.controller.AbstractOperationContext$Step.handleResult(AbstractOperationContext.java:1366)
[Server:main-server] at
org.jboss.as.controller.AbstractOperationContext$Step.finalizeInternal(AbstractOperationContext.java:1328)
[Server:main-server] at
org.jboss.as.controller.AbstractOperationContext$Step.finalizeStep(AbstractOperationContext.java:1311)
[Server:main-server] at
org.jboss.as.controller.AbstractOperationContext$Step.access$300(AbstractOperationContext.java:1185)
[Server:main-server] at
org.jboss.as.controller.AbstractOperationContext.executeResultHandlerPhase(AbstractOperationContext.java:767)
[Server:main-server] at
org.jboss.as.controller.AbstractOperationContext.executeDoneStage(AbstractOperationContext.java:753)
[Server:main-server] at
org.jboss.as.controller.AbstractOperationContext.processStages(AbstractOperationContext.java:680)
[Server:main-server] at
org.jboss.as.controller.AbstractOperationContext.executeOperation(AbstractOperationContext.java:370)
[Server:main-server] at
org.jboss.as.controller.OperationContextImpl.executeOperation(OperationContextImpl.java:1344)
[Server:main-server] at
org.jboss.as.controller.ModelControllerImpl.internalExecute(ModelControllerImpl.java:392)
[Server:main-server] at
org.jboss.as.controller.ModelControllerImpl.execute(ModelControllerImpl.java:217)
[Server:main-server] at
org.jboss.as.controller.remote.TransactionalProtocolOperationHandler.internalExecute(TransactionalProtocolOperationHandler.java:247)
[Server:main-server] at
org.jboss.as.controller.remote.TransactionalProtocolOperationHandler$ExecuteRequestHandler.doExecute(TransactionalProtocolOperationHandler.java:185)
[Server:main-server] at
org.jboss.as.controller.remote.TransactionalProtocolOperationHandler$ExecuteRequestHandler$1.run(TransactionalProtocolOperationHandler.java:138)
[Server:main-server] at
org.jboss.as.controller.remote.TransactionalProtocolOperationHandler$ExecuteRequestHandler$1.run(TransactionalProtocolOperationHandler.java:134)
[Server:main-server] at java.security.AccessController.doPrivileged(Native Method)
[Server:main-server] at javax.security.auth.Subject.doAs(Subject.java:360)
[Server:main-server] at
org.jboss.as.controller.AccessAuditContext.doAs(AccessAuditContext.java:81)
[Server:main-server] at
org.jboss.as.controller.remote.TransactionalProtocolOperationHandler$ExecuteRequestHandler$2$1.run(TransactionalProtocolOperationHandler.java:157)
[Server:main-server] at
org.jboss.as.controller.remote.TransactionalProtocolOperationHandler$ExecuteRequestHandler$2$1.run(TransactionalProtocolOperationHandler.java:153)
[Server:main-server] at java.security.AccessController.doPrivileged(Native Method)
[Server:main-server] at
org.jboss.as.controller.remote.TransactionalProtocolOperationHandler$ExecuteRequestHandler$2.execute(TransactionalProtocolOperationHandler.java:153)
[Server:main-server] at
org.jboss.as.protocol.mgmt.AbstractMessageHandler$ManagementRequestContextImpl$1.doExecute(AbstractMessageHandler.java:363)
[Server:main-server] at
org.jboss.as.protocol.mgmt.AbstractMessageHandler$AsyncTaskRunner.run(AbstractMessageHandler.java:472)
[Server:main-server] at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
[Server:main-server] at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
[Server:main-server] at java.lang.Thread.run(Thread.java:745)
[Server:main-server] at org.jboss.threads.JBossThread.run(JBossThread.java:320)
{code}
The WAR file in question doesn't actually use JAX-RS, so I'm not sure why
javax.ws.rs.core.Application would be causing any issues.