[jboss-jira] [JBoss JIRA] (WFCORE-987) java.lang.StringIndexOutOfBoundsException when empty string is used in a resource address value

Brian Stansberry (JIRA) issues at jboss.org
Thu Sep 17 15:17:00 EDT 2015


     [ https://issues.jboss.org/browse/WFCORE-987?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Brian Stansberry updated WFCORE-987:
------------------------------------
    Description: 
Following copied from WFCORE-212 shows a StringIndexOutOfBounds being thrown when the empty string is the 'value' passed to PathElement.pathElement(key, value). The point of this JIRA is not to correct the reason for that empty string, but rather to fail cleanly (probably with the same logic used for the value == null case.)

Following steps to reproduce section you will encounter this exception:
{noformat}
15:25:04,304 ERROR [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0055: Caught exception during boot: java.lang.StringIndexOutOfBoundsException: String index out of range: 0
	at java.lang.String.charAt(String.java:646) [rt.jar:1.8.0_20]
	at org.jboss.as.controller.PathElement.<init>(PathElement.java:102) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.PathElement.pathElement(PathElement.java:67) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.registry.PlaceholderResource$PlaceholderResourceEntry.<init>(PlaceholderResource.java:141) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.messaging.HornetQServerResource.getChildren(HornetQServerResource.java:184)
	at org.jboss.as.controller.registry.AbstractModelResource$DelegateResource.getChildren(AbstractModelResource.java:280) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:252) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:239) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:225) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:254) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:239) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:225) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:254) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:239) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:225) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:213) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.ModelControllerImpl.writeModel(ModelControllerImpl.java:640) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.OperationContextImpl.createPersistenceResource(OperationContextImpl.java:381) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.AbstractOperationContext.doCompleteStep(AbstractOperationContext.java:577) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.AbstractOperationContext.completeStepInternal(AbstractOperationContext.java:308) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.AbstractOperationContext.finishStep(AbstractOperationContext.java:803) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.AbstractOperationContext.executeStep(AbstractOperationContext.java:778) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.AbstractOperationContext.doCompleteStep(AbstractOperationContext.java:535) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.AbstractOperationContext.completeStepInternal(AbstractOperationContext.java:308) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.AbstractOperationContext.executeOperation(AbstractOperationContext.java:303) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.OperationContextImpl.executeOperation(OperationContextImpl.java:1158) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.ModelControllerImpl.boot(ModelControllerImpl.java:404) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.AbstractControllerService.boot(AbstractControllerService.java:301) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.server.ServerService.boot(ServerService.java:364) [wildfly-server-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.server.ServerService.boot(ServerService.java:339) [wildfly-server-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.AbstractControllerService$1.run(AbstractControllerService.java:263) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_20]
{noformat}

  was:
Following steps to reproduce section you will encounter this exception:
{noformat}
15:25:04,304 ERROR [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0055: Caught exception during boot: java.lang.StringIndexOutOfBoundsException: String index out of range: 0
	at java.lang.String.charAt(String.java:646) [rt.jar:1.8.0_20]
	at org.jboss.as.controller.PathElement.<init>(PathElement.java:102) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.PathElement.pathElement(PathElement.java:67) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.registry.PlaceholderResource$PlaceholderResourceEntry.<init>(PlaceholderResource.java:141) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.messaging.HornetQServerResource.getChildren(HornetQServerResource.java:184)
	at org.jboss.as.controller.registry.AbstractModelResource$DelegateResource.getChildren(AbstractModelResource.java:280) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:252) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:239) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:225) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:254) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:239) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:225) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:254) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:239) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:225) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:213) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.ModelControllerImpl.writeModel(ModelControllerImpl.java:640) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.OperationContextImpl.createPersistenceResource(OperationContextImpl.java:381) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.AbstractOperationContext.doCompleteStep(AbstractOperationContext.java:577) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.AbstractOperationContext.completeStepInternal(AbstractOperationContext.java:308) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.AbstractOperationContext.finishStep(AbstractOperationContext.java:803) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.AbstractOperationContext.executeStep(AbstractOperationContext.java:778) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.AbstractOperationContext.doCompleteStep(AbstractOperationContext.java:535) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.AbstractOperationContext.completeStepInternal(AbstractOperationContext.java:308) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.AbstractOperationContext.executeOperation(AbstractOperationContext.java:303) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.OperationContextImpl.executeOperation(OperationContextImpl.java:1158) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.ModelControllerImpl.boot(ModelControllerImpl.java:404) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.AbstractControllerService.boot(AbstractControllerService.java:301) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.server.ServerService.boot(ServerService.java:364) [wildfly-server-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.server.ServerService.boot(ServerService.java:339) [wildfly-server-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at org.jboss.as.controller.AbstractControllerService$1.run(AbstractControllerService.java:263) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
	at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_20]
{noformat}

Note that the attached WAR works fine when the following is removed from ejb-jar.xml:
{noformat}
       <activation-config-property>
          <activation-config-property-name>subscriptionDurability</activation-config-property-name>
          <activation-config-property-value>Durable</activation-config-property-value>
        </activation-config-property>
{noformat}



> java.lang.StringIndexOutOfBoundsException when empty string is used in a resource address value
> -----------------------------------------------------------------------------------------------
>
>                 Key: WFCORE-987
>                 URL: https://issues.jboss.org/browse/WFCORE-987
>             Project: WildFly Core
>          Issue Type: Bug
>          Components: Domain Management
>    Affects Versions: 1.0.0.Alpha9, 1.0.0.Alpha11
>         Environment: WildFly-9.0.0.Alpha2-SNAPSHOT 2014-11-03, oracle-jdk 1.8.0_20
>            Reporter: Tomas Remes
>            Assignee: Brian Stansberry
>
> Following copied from WFCORE-212 shows a StringIndexOutOfBounds being thrown when the empty string is the 'value' passed to PathElement.pathElement(key, value). The point of this JIRA is not to correct the reason for that empty string, but rather to fail cleanly (probably with the same logic used for the value == null case.)
> Following steps to reproduce section you will encounter this exception:
> {noformat}
> 15:25:04,304 ERROR [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0055: Caught exception during boot: java.lang.StringIndexOutOfBoundsException: String index out of range: 0
> 	at java.lang.String.charAt(String.java:646) [rt.jar:1.8.0_20]
> 	at org.jboss.as.controller.PathElement.<init>(PathElement.java:102) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.PathElement.pathElement(PathElement.java:67) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.registry.PlaceholderResource$PlaceholderResourceEntry.<init>(PlaceholderResource.java:141) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.messaging.HornetQServerResource.getChildren(HornetQServerResource.java:184)
> 	at org.jboss.as.controller.registry.AbstractModelResource$DelegateResource.getChildren(AbstractModelResource.java:280) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:252) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:239) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:225) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:254) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:239) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:225) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:254) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:239) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:225) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.registry.Resource$Tools.readModel(Resource.java:213) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.ModelControllerImpl.writeModel(ModelControllerImpl.java:640) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.OperationContextImpl.createPersistenceResource(OperationContextImpl.java:381) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.AbstractOperationContext.doCompleteStep(AbstractOperationContext.java:577) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.AbstractOperationContext.completeStepInternal(AbstractOperationContext.java:308) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.AbstractOperationContext.finishStep(AbstractOperationContext.java:803) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.AbstractOperationContext.executeStep(AbstractOperationContext.java:778) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.AbstractOperationContext.doCompleteStep(AbstractOperationContext.java:535) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.AbstractOperationContext.completeStepInternal(AbstractOperationContext.java:308) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.AbstractOperationContext.executeOperation(AbstractOperationContext.java:303) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.OperationContextImpl.executeOperation(OperationContextImpl.java:1158) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.ModelControllerImpl.boot(ModelControllerImpl.java:404) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.AbstractControllerService.boot(AbstractControllerService.java:301) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.server.ServerService.boot(ServerService.java:364) [wildfly-server-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.server.ServerService.boot(ServerService.java:339) [wildfly-server-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at org.jboss.as.controller.AbstractControllerService$1.run(AbstractControllerService.java:263) [wildfly-controller-1.0.0.Alpha9.jar:1.0.0.Alpha9]
> 	at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_20]
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.11#64026)


More information about the jboss-jira mailing list