geronimo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Jencks <david_jen...@yahoo.com>
Subject Re: Problem with Struts in Geronimo 2.0.2
Date Thu, 03 Jan 2008 18:20:03 GMT
There were a lot of bugs in the geronimo 1.1.1 manifest classpath  
handling and I fixed them....  IIRC I was considering making strict  
checking optional but couldn't think of a good way to do it.

See https://issues.apache.org/jira/browse/GERONIMO-3316

thanks
david jencks

On Jan 3, 2008, at 4:38 AM, Hari Krishna Korrapati wrote:

> Hi,
>
> I am working on a ear application on Geronimo-2.0.2.
> The web module of ear uses struts-1.1.jar. MANIFEST file of  
> struts-1.1 has the following class path entry
>
> Class-Path:  commons-beanutils.jar commons-collections.jar commons-dig
>  ester.jar commons-logging.jar commons-validator.jar jakarta-oro.jar s
>  truts-legacy.jar
>
> But my ear has something like common-beanutils-1.6.1.jar , common- 
> collections-2.0.jar, etc..
> While deploying the ear, struts is looking for commons- 
> beanutils.jar, where as EAR has jar, but with version.
>
> The exception which i am getting is:
>
> Manifest class path entries must be a valid jar file (JAVAEE 5  
> Section 8.2): path=commons-beanutils.jar, resolved to  
> targetURI=commons-beanutils.jar
>     looking at: struts-1.1.jar    current classpath: [WEB-INF/ 
> classes/, ../commons-dbcp-1.0.jar, ../regexp-1.2.jar, ../j2ssh-  
> ant-0.2.2.jar , ../odmg-3.0.jar, ../j2ssh-core-0.2.2.jar, ../ 
> commons-beanutils-1.6.1.jar, ../commons-pool-1.0.1.jar, ../commons- 
> codec-1.3.jar, ../oro-2.0.7.jar, ../commons-validator-1.1.4.jar, ../ 
> Acme-1.0.jar, ../j2ee-1.4.jar, ../struts- 1.1.jar, ../commons- 
> beanutils.jar]    ignoring modules: [dao-rc.jar, biz-rc.jar,  
> sampleweb-rc.war]
> org.apache.geronimo.common.DeploymentException: Manifest class path  
> entries must be a valid jar file (JAVAEE 5 Section 8.2):  
> path=commons-beanutils.jar, resolved to targetURI=commons- 
> beanutils.jar
>     looking at: struts-1.1.jar    current classpath: [WEB-INF/ 
> classes/, ../commons-dbcp-1.0.jar, ../regexp-1.2.jar, ../j2ssh- 
> ant-0.2.2.jar, ../odmg- 3.0.jar, ../j2ssh-core-0.2.2.jar, ../ 
> commons-beanutils-1.6.1.jar, ../commons-pool-1.0.1.jar, ../commons- 
> codec-1.3.jar, ../oro-2.0.7.jar, ../commons-validator-1.1.4.jar, ../ 
> Acme-1.0.jar, ../j2ee-1.4.jar, ../struts-1.1.jar , ../commons-  
> beanutils.jar]    ignoring modules: [dao-rc.jar, biz-rc.jar,  
> sampleweb-rc.war]
>     at  
> org.apache.geronimo.deployment.DeploymentContext.getCompleteManifestCl 
> assPath(DeploymentContext.java:367)
>     at  
> org.apache.geronimo.deployment.DeploymentContext.getCompleteManifestCl 
> assPath (DeploymentContext.java:371)
>     at  
> org.apache.geronimo.deployment.DeploymentContext.getCompleteManifestCl 
> assPath(DeploymentContext.java:286)
>     at  
> org.apache.geronimo.web25.deployment.AbstractWebModuleBuilder.basicIni 
> tContext (AbstractWebModuleBuilder.java:332)
>     at  
> org.apache.geronimo.tomcat.deployment.TomcatModuleBuilder.initContext( 
> TomcatModuleBuilder.java:290)
>     at org.apache.geronimo.tomcat.deployment.TomcatModuleBuilder$ 
> $FastClassByCGLIB$$6f85ec2c.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:124)
>     at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke 
> (GBeanInstance.java:830)
>     at org.apache.geronimo.gbean.runtime.RawInvoker.invoke 
> (RawInvoker.java:57)
>     at org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke  
> (RawOperationInvoker.java:35)
>     at  
> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept 
> (ProxyMethodInterceptor.java:96)
>     at org.apache.geronimo.j2ee.deployment.ModuleBuilder$ 
> $EnhancerByCGLIB$$72b50ef.initContext (<generated>)
>     at  
> org.apache.geronimo.j2ee.deployment.SwitchingModuleBuilder.initContext 
> (SwitchingModuleBuilder.java:159)
>     at org.apache.geronimo.j2ee.deployment.SwitchingModuleBuilder$ 
> $FastClassByCGLIB$$d0c31844.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:124)
>     at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke 
> (GBeanInstance.java:830)
>     at org.apache.geronimo.gbean.runtime.RawInvoker.invoke 
> (RawInvoker.java:57)
>     at org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke  
> (RawOperationInvoker.java:35)
>     at  
> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept 
> (ProxyMethodInterceptor.java:96)
>     at org.apache.geronimo.j2ee.deployment.ModuleBuilder$ 
> $EnhancerByCGLIB$$72b50ef.initContext (<generated>)
>     at  
> org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguratio 
> n(EARConfigBuilder.java:576)
>     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:124)
>     at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke 
> (GBeanInstance.java:830)
>     at org.apache.geronimo.gbean.runtime.RawInvoker.invoke 
> (RawInvoker.java:57)
>     at org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke  
> (RawOperationInvoker.java:35)
>     at  
> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept 
> (ProxyMethodInterceptor.java:96)
>     at org.apache.geronimo.j2ee.deployment.CorbaGBeanNameSource$ 
> $EnhancerByCGLIB$$3e58cb04.buildConfiguration (<generated>)
>     at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java: 
> 304)
>     at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java: 
> 126)
>     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:124)
>     at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke 
> (GBeanInstance.java:865)
>     at org.apache.geronimo.kernel.basic.BasicKernel.invoke 
> (BasicKernel.java:239)
>     at  
> org.apache.geronimo.deployment.plugin.local.AbstractDeployCommand.doDe 
> ploy (AbstractDeployCommand.java:116)
>     at  
> org.apache.geronimo.deployment.plugin.local.DistributeCommand.run 
> (DistributeCommand.java:61)
>     at java.lang.Thread.run(Thread.java:595)
> Caused by: java.io.IOException : Could not create JarFile for file:  
> E:\Geronimo 2.0.2\geronimo-tomcat6-jee5-2.0.2-bin\geronimo-tomcat6- 
> jee5-2.0.2\repository\sample-rc\sampleapp\rc\sampleapp-rc.car 
> \commons-beanutils.jar
>     at org.apache.geronimo.deployment.DeploymentContext 
> $DefaultJarFileFactory.newJarFile (DeploymentContext.java:271)
>     at  
> org.apache.geronimo.deployment.DeploymentContext.getCompleteManifestCl 
> assPath(DeploymentContext.java:365)
>     ... 44 more
> Caused by: java.util.zip.ZipException: The system cannot find the  
> file specified
>     at java.util.zip.ZipFile.open(Native Method)
>     at java.util.zip.ZipFile.<init>(ZipFile.java:204)
>     at java.util.jar.JarFile.<init>(JarFile.java:132)
>     at java.util.jar.JarFile.<init>( JarFile.java:97)
>     at org.apache.geronimo.deployment.DeploymentContext 
> $DefaultJarFileFactory.newJarFile(DeploymentContext.java:269)
>     ... 45 more
>
>
>
> Then i changed class path entry in manifest file of struts to have  
> the versions which i use, like
> Class-Path:  commons-beanutils-1.6.1.jar commons-collections-2.1.jar c
>  ommons-digester-1.5.jar commons-logging-1.0.jar commons-validator-1.1
>  .4.jar oro-2.0.7.jar struts-legacy-1.1.jar
> After changing manifest file, i am not getting any errors and EAR  
> got deployed successfully.
>
> It worked fine with geronimo-1.1.1 without changing any thing, but  
> facing problem in geronimo 2.0.2 .
> Please advice how to overcome this issue.
>
> Thanks and Regards,
> Hari


Mime
View raw message