Details
-
Bug
-
Status: Resolved
-
Critical
-
Resolution: Fixed
-
2.1.0
-
None
-
Windows XP, AG 2.1, GEP 2.1(unstable), WTP201(which includes all the required artifacts)
Description
Steps to recreate the issue
1) Create a dynamic web project using Eclipse.
2) Launch WEB-INF/geronimo-web.xml.
The namespace is of AG 1.x level
<web-app xmlns="http://geronimo.apache.org/xml/ns/j2ee/web-1.1" xmlns:nam="http://geronimo.apache.org/xml/ns/naming-1.1" xmlns:sec="http://geronimo.apache.org/xml/ns/security-1.1" xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.1">
Although the deployment is successful in case of web application but in case of a EJB project while deploying it through eclipse it gives the following error
Distribution of configuration failed. See log for details.
Failed parsing descriptors for module: C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\geronimo-deployer51306.tmpdir\StatelessSessionEJB.zip
org.apache.geronimo.common.DeploymentException: Failed parsing descriptors for module: C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\geronimo-deployer51306.tmpdir\StatelessSessionEJB.zip
at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.createModule(EjbModuleBuilder.java:299)
at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.createModule(EjbModuleBuilder.java:224)
at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.getDeploymentPlan(EARConfigBuilder.java:310)
at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:226)
at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:133)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:124)
at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:867)
at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239)
at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:342)
at sun.reflect.GeneratedMethodAccessor190.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:124)
at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:867)
at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239)
at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:172)
at com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:231)
at com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:238)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:833)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:802)
at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1423)
at javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectionImpl.java:96)
at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1260)
at java.security.AccessController.doPrivileged(AccessController.java:279)
at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1363)
at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:797)
at sun.reflect.GeneratedMethodAccessor134.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:309)
at sun.rmi.transport.Transport$1.run(Transport.java:168)
at java.security.AccessController.doPrivileged(AccessController.java:279)
at sun.rmi.transport.Transport.serviceCall(Transport.java:164)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:506)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.handleRequest(TCPTransport.java:838)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:912)
at java.lang.Thread.run(Thread.java:810)
Caused by: org.apache.openejb.OpenEJBException: Cannot unmarshall the openejb-jar.xml. Xml content written to: C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\openejb-jar-51307.xml: unexpected element (uri:"http://geronimo.apache.org/xml/ns/deployment-1.1", local:"environment"). Expected elements are <
security>,<
{http://openejb.apache.org/xml/ns/openejb-jar-2.2}enforce-foreign-key-constraints>,<
{http://openejb.apache.org/xml/ns/openejb-jar-2.2}enterprise-beans>,<
{http://openejb.apache.org/xml/ns/openejb-jar-2.2}relationships>,<
{http://geronimo.apache.org/xml/ns/deployment-1.2}gbean>,<
{http://geronimo.apache.org/xml/ns/naming-1.2}cmp-connection-factory>,<
{http://geronimo.apache.org/xml/ns/deployment-1.2}environment>,<
{http://java.sun.com/xml/ns/persistence}persistence>,<
{http://geronimo.apache.org/xml/ns/security-2.0}security>,<
{http://openejb.apache.org/xml/ns/openejb-jar-2.2}db-syntax-factory>,<
{http://geronimo.apache.org/xml/ns/naming-1.2}message-destination>,<
{http://geronimo.apache.org/xml/ns/deployment-1.2}service>,<
{http://openejb.apache.org/xml/ns/openejb-jar-2.2}ejb-ql-compiler-factory>
at org.apache.openejb.config.ReadDescriptors.readOpenejbJar(ReadDescriptors.java:224)
at org.apache.openejb.config.ReadDescriptors.deploy(ReadDescriptors.java:78)
at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.createModule(EjbModuleBuilder.java:297)
... 42 more
Caused by: javax.xml.bind.UnmarshalException: unexpected element (uri:"http://geronimo.apache.org/xml/ns/deployment-1.1", local:"environment"). Expected elements are <
security>,<
{http://openejb.apache.org/xml/ns/openejb-jar-2.2}enforce-foreign-key-constraints>,<
{http://openejb.apache.org/xml/ns/openejb-jar-2.2}enterprise-beans>,<
{http://openejb.apache.org/xml/ns/openejb-jar-2.2}relationships>,<
{http://geronimo.apache.org/xml/ns/deployment-1.2}gbean>,<
{http://geronimo.apache.org/xml/ns/naming-1.2}cmp-connection-factory>,<
{http://geronimo.apache.org/xml/ns/deployment-1.2}environment>,<
{http://java.sun.com/xml/ns/persistence}persistence>,<
{http://geronimo.apache.org/xml/ns/security-2.0}security>,<
{http://openejb.apache.org/xml/ns/openejb-jar-2.2}db-syntax-factory>,<
{http://geronimo.apache.org/xml/ns/naming-1.2}message-destination>,<
{http://geronimo.apache.org/xml/ns/deployment-1.2}service>,<
{http://openejb.apache.org/xml/ns/openejb-jar-2.2}ejb-ql-compiler-factory>
at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallingContext.handleEvent(UnmarshallingContext.java:523)
at com.sun.xml.bind.v2.runtime.unmarshaller.Loader.reportError(Loader.java:199)
at com.sun.xml.bind.v2.runtime.unmarshaller.Loader.reportError(Loader.java:194)
at com.sun.xml.bind.v2.runtime.unmarshaller.Loader.reportUnexpectedChildElement(Loader.java:71)
at com.sun.xml.bind.v2.runtime.unmarshaller.Loader.childElement(Loader.java:65)
at com.sun.xml.bind.v2.runtime.unmarshaller.StructureLoader.childElement(StructureLoader.java:209)
at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallingContext._startElement(UnmarshallingContext.java:366)
at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallingContext.startElement(UnmarshallingContext.java:347)
at com.sun.xml.bind.v2.runtime.unmarshaller.SAXConnector.startElement(SAXConnector.java:101)
at org.xml.sax.helpers.XMLFilterImpl.startElement(Unknown Source)
at org.apache.openejb.jee.oejb2.NamespaceFilter.startElement(NamespaceFilter.java:180)
at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.xml.sax.helpers.XMLFilterImpl.parse(Unknown Source)
at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:194)
at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:167)
at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:120)
at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:103)
at org.apache.openejb.jee.oejb2.JaxbOpenejbJar2.unmarshal(JaxbOpenejbJar2.java:104)
at org.apache.openejb.jee.oejb2.JaxbOpenejbJar2.unmarshal(JaxbOpenejbJar2.java:66)
at org.apache.openejb.config.ReadDescriptors.readOpenejbJar(ReadDescriptors.java:134)
... 44 more
The workaround for this is manually edit the namespace verisons