Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
1.0-M5
-
Security Level: public (Regular issues)
-
None
Description
Problem reported on mailing list. Need better error message, at a minimum.
Hi,
I canĀ“t deploy:
Error: Unable to distribute helloworld.jar: Unable to initialize
EJBContainer GBean: ejbName
[helloworld.domain.avail.AvailabilityMovement] caused by -1
All seems right:
ejb-jar.xml:
<?xml version="1.0" encoding="UTF-8"?>
<ejb-jar xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd" version="2.1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/j2ee">
<enterprise-beans>
<entity>
<description>Movimiento de disponibilidad</description>
<ejb-name>helloworld.domain.avail.AvailabilityMovement</ejb-name>
<home>helloworld.domain.avail.AvailabilityMovementHome</home>
<remote>helloworld.domain.avail.AvailabilityMovement</remote>
<ejb-class>helloworld.domain.avail.AvailabilityMovementCMP</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>java.lang.String</prim-key-class>
<reentrant>false</reentrant>
<cmp-version>2.x</cmp-version>
<abstract-schema-name>AvailabilityMovement</abstract-schema-name>
<cmp-field>
<field-name>availabilityMovementId</field-name>
</cmp-field>
...
openejb-jar.xml:
<?xml version="1.0" encoding="UTF-8"?>
<openejb-jar xmlns="http://www.openejb.org/xml/ns/openejb-jar-2.0"
xmlns:naming="http://geronimo.apache.org/xml/ns/naming-1.0"
xmlns:pkgen="http://www.openejb.org/xml/ns/pkgen-2.0"
xmlns:security="http://geronimo.apache.org/xml/ns/security-1.0"
xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.openejb.org/xml/ns/openejb-jar-2.0"
configId="helloworld" parentId="org/apache/geronimo/Server">
<naming:cmp-connection-factory>
<naming:resource-link>TrkSiTravel</naming:resource-link>
</naming:cmp-connection-factory>
<enterprise-beans>
<entity>
<ejb-name>helloworld.domain.avail.AvailabilityMovement</ejb-name>
<jndi-name>helloworld.domain.avail.AvailabilityMovementHome</jndi-name>
<table-name>availability_movement</table-name>
<cmp-field-mapping>
<cmp-field-name>availabilityMovementId</cmp-field-name>
<table-column>availabilitymovementid</table-column>
</cmp-field-mapping>
....
geronimo.log:
18:53:56,265 DEBUG [Deployer] Deployment failed: plan=null,
module=/usr2/geronimo/geronimo51/grupoiris/helloworld.jar
org.apache.geronimo.common.DeploymentException: Unable to initialize
EJBContainer GBean: ejbName [helloworld.domain.avail.AvailabilityMovement]
at
org.openejb.deployment.CMPEntityBuilder.createBean(CMPEntityBuilder.java:188)
at
org.openejb.deployment.CMPEntityBuilder.buildBeans(CMPEntityBuilder.java:108)
at
org.openejb.deployment.OpenEJBModuleBuilder.addGBeans(OpenEJBModuleBuilder.java:518)
at
org.openejb.deployment.OpenEJBModuleBuilder$$FastClassByCGLIB$$11bd7b20.invoke(<generated>)
at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
at
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
at
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:118)
at
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:760)
at
org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
at
org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:36)
at
org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
at
org.apache.geronimo.j2ee.deployment.ModuleBuilder$$EnhancerByCGLIB$$2e9d1ba5.addGBeans(<generated>)
at
org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:384)
at
org.apache.geronimo.j2ee.deployment.EARConfigBuilder$$FastClassByCGLIB$$38e56ec6.invoke(<generated>)
at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
at
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
at
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:118)
at
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:760)
at
org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
at
org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:36)
at
org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
at
org.apache.geronimo.deployment.ConfigurationBuilder$$EnhancerByCGLIB$$3a8a2417.buildConfiguration(<generated>)
at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:190)
at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:87)
at
org.apache.geronimo.deployment.Deployer$$FastClassByCGLIB$$734a235d.invoke(<generated>)
at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
at
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
at
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:118)
at
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:795)
at
org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:180)
at
org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:125)
at
org.apache.geronimo.kernel.KernelGBean$$FastClassByCGLIB$$1cccefc9.invoke(<generated>)
at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
at
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
at
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:118)
at
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:795)
at
org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:180)
at
org.apache.geronimo.kernel.jmx.MBeanServerDelegate.invoke(MBeanServerDelegate.java:117)
at
javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1408)
at
javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectionImpl.java:81)
at
javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1245)
at java.security.AccessController.doPrivileged(Native Method)
at
javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1348)
at
javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:782)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
at sun.rmi.transport.Transport$1.run(Transport.java:153)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
at
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)
at
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.ArrayIndexOutOfBoundsException: -1
at
org.openejb.entity.cmp.CMPInstanceContextFactory.<init>(CMPInstanceContextFactory.java:127)
at
org.openejb.deployment.CMPContainerBuilder.buildIt(CMPContainerBuilder.java:311)
at
org.openejb.deployment.AbstractContainerBuilder.createConfiguration(AbstractContainerBuilder.java:354)
at
org.openejb.deployment.CMPEntityBuilder.createBean(CMPEntityBuilder.java:185)