[jboss-jira] [JBoss JIRA] Commented: (JBMETA-195) NullPointerException when assinging a named invoker binding to a Remote bean

jerry stewart (JIRA) jira-events at lists.jboss.org
Thu Sep 2 01:12:52 EDT 2010


    [ https://jira.jboss.org/browse/JBMETA-195?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12548501#action_12548501 ] 

jerry stewart commented on JBMETA-195:
--------------------------------------

I have seen a similar stack trace, DeploymentException, caused by NullPointerException in Class.forName0().
running JBoss 5.1.0.GA with JBossTools

I tracked it down to a jboss.xml entry i made to bind a bean to jndi name:
The offending item jboss.xml was:

<?xml version="1.0" encoding="UTF-8" ?> 
<jboss>
	<enterprise-beans>
		<session>
			<ejb-name>XDBInitialDatabaseCreatorBean</ejb-name> 
			<local-jndi-name>java:ejb/XDBInitialDatabaseCreatorBean</local-jndi-name> 
		</session>
	</enterprise-beans>
</jboss>

The problem was that the XDBInitialDatabaseCreatorBean was a POJO not a bean (in error)

I hope simple way to reproduce the NPE helps to track down the "unhelpful error/bug"

> NullPointerException when assinging a named invoker binding to a Remote bean
> ----------------------------------------------------------------------------
>
>                 Key: JBMETA-195
>                 URL: https://jira.jboss.org/browse/JBMETA-195
>             Project: JBoss Metadata
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>         Environment: JBoss AS 5.1.0.CR1
>            Reporter: Shadow Creeper
>            Assignee: Andrew Lee Rubinger
>
> NullPointerException thrown from Class.forName0() when assigning a named invoker binding to a Remote bean in JBoss AS 5.1.0.CR1.
> Following the documentation on the Wiki (all the documentation I found said the same general thing), you create an invoker-proxy-bindings node in jboss.xml and assign it via invoker-proxy-binding-name in the session bean definition. I also tried assigning it via the @RemoteBinding(name="invoker-name-here") annotation instead but with the same result.
> jboss.xml:
> [code]
> <?xml version="1.0"?>
> <!DOCTYPE jboss PUBLIC "-//JBoss//DTD JBOSS 5.0//EN"
>    "http://www.jboss.org/j2ee/dtd/jboss_5_0.dtd">
> <jboss>
>    <enterprise-beans>
>       <session>
>          <ejb-name>MyStatelessRemoteBean</ejb-name>
>          <configuration-name>Standard Stateless SessionBean</configuration-name>
>          <invoker-bindings>
>             <invoker>
>                <invoker-proxy-binding-name>
>                   stateless-ssl-invoker
>                </invoker-proxy-binding-name>
>             </invoker>
>          </invoker-bindings>
>       </session>
>    </enterprise-beans>
>    <invoker-proxy-bindings>
>       <invoker-proxy-binding>
>          <name>stateless-ssl-invoker</name>
>          <invoker-mbean>jboss:service=invoker,type=jrmp,socketType=SSL</invoker-mbean>
>          <proxy-factory>org.jboss.proxy.ejb.ProxyFactory</proxy-factory>
>          <proxy-factory-config>
>             <client-interceptors>
>                <home>
>                   <interceptor>org.jboss.proxy.ejb.HomeInterceptor</interceptor>
>                   <interceptor>org.jboss.proxy.SecurityInterceptor</interceptor>
>                   <interceptor>org.jboss.proxy.TransactionInterceptor</interceptor>
>                   <interceptor>org.jboss.invocation.InvokerInterceptor</interceptor>
>                </home>
>                <bean>
>                   <interceptor>org.jboss.proxy.ejb.StatelessSessionInterceptor</interceptor>
>                   <interceptor>org.jboss.proxy.SecurityInterceptor</interceptor>
>                   <interceptor>org.jboss.proxy.TransactionInterceptor</interceptor>
>                   <interceptor>org.jboss.invocation.InvokerInterceptor</interceptor>
>                </bean>
>             </client-interceptors>
>          </proxy-factory-config>
>       </invoker-proxy-binding>
>    </invoker-proxy-bindings>
> </jboss>
> [/code]
> jboss-service.xml:
> [code]
> <?xml version="1.0" encoding="UTF-8" ?>
> <server>
>    <mbean code="org.jboss.security.plugins.JaasSecurityDomain"
>           name="jboss.security:service=JaasSecurityDomain,domain=RMI+SSL">
>       <constructor>
>          <arg type="java.lang.String" value="RMI+SSL"/>
>       </constructor>
>       <attribute name="KeyStoreURL">file:///home/shadow/example.keystore</attribute>
>       <attribute name="KeyStorePass">rmi+ssl</attribute>
>    </mbean>
>    <mbean code="org.jboss.invocation.jrmp.server.JRMPInvoker" name="jboss:service=invoker,type=jrmp,socketType=SSL">
>       <attribute name="RMIObjectPort">14445</attribute>
>       <attribute name="RMIClientSocketFactory">org.jboss.security.ssl.RMISSLClientSocketFactory</attribute>
>       <attribute name="RMIServerSocketFactory">org.jboss.security.ssl.RMISSLServerSocketFactory</attribute>
>       <attribute name="SecurityDomain">java:/jaas/RMI+SSL</attribute>
>       <depends>jboss.security:service=JaasSecurityDomain,domain=RMI+SSL</depends>
>    </mbean>
> </server>
> [/code]
> Logged stacktrace:
> <pre>
> 15:45:12,962 ERROR [AbstractKernelController] Error installing to PostClassLoader: name=vfsfile:/hom
> e/shadow/debug/jboss-5.1.0.CR1/server/default/deploy/myApplication.ear/ state=ClassLoader mode=Manua
> l requiredState=PostClassLoader
> org.jboss.deployers.spi.DeploymentException: Error during deploy: vfsfile:/home/shadow/debug/jboss-5
> .1.0.CR1/server/default/deploy/myApplication.ear/ejb.jar/
> 	at org.jboss.deployers.spi.DeploymentException.rethrowAsDeploymentException(DeploymentException.jav
> a:49)
> 	at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:177)
> 	at org.jboss.deployers.plugins.deployers.DeployersImpl.doDeploy(DeployersImpl.java:1439)
> 	at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1157
> )
> 	at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1210
> )
> 	at org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:1098)
> 	at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:34
> 8)
> 	at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1631)
> 	at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934)
> 	at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082)
> 	at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984)
> 	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822)
> 	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553)
> 	at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:781)
> 	at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:702)
> 	at org.jboss.system.server.profileservice.repository.MainDeployerAdapter.process(MainDeployerAdapte
> r.java:117)
> 	at org.jboss.system.server.profileservice.repository.ProfileDeployAction.install(ProfileDeployActio
> n.java:70)
> 	at org.jboss.system.server.profileservice.repository.AbstractProfileAction.install(AbstractProfileA
> ction.java:53)
> 	at org.jboss.system.server.profileservice.repository.AbstractProfileService.install(AbstractProfile
> Service.java:361)
> 	at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:34
> 8)
> 	at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1631)
> 	at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934)
> 	at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082)
> 	at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984)
> 	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822)
> 	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553)
> 	at org.jboss.system.server.profileservice.repository.AbstractProfileService.activateProfile(Abstrac
> tProfileService.java:306)
> 	at org.jboss.system.server.profileservice.ProfileServiceBootstrap.start(ProfileServiceBootstrap.jav
> a:271)
> 	at org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:461)
> 	at org.jboss.Main.boot(Main.java:216)
> 	at org.jboss.Main$1.run(Main.java:546)
> 	at java.lang.Thread.run(Thread.java:636)
> Caused by: java.lang.NullPointerException
> 	at java.lang.Class.forName0(Native Method)
> 	at java.lang.Class.forName(Class.java:264)
> 	at org.jboss.metadata.process.processor.ejb.jboss.SetDefaultLocalBusinessInterfaceProcessor.process
> (SetDefaultLocalBusinessInterfaceProcessor.java:114)
> 	at org.jboss.metadata.process.chain.ejb.jboss.JBossMetaDataProcessorChain.process(JBossMetaDataProc
> essorChain.java:115)
> 	at org.jboss.ejb3.deployers.Ejb3MetadataProcessingDeployer.deploy(Ejb3MetadataProcessingDeployer.ja
> va:115)
> 	at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:171)
> 	... 30 more
> </pre>

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the jboss-jira mailing list