[ 
http://issues.apache.org/jira/browse/GERONIMO-1089?page=comments#action_12332589
 ] 

Lin Sun commented on GERONIMO-1089:
-----------------------------------

>From the geronimo.log, here's the stack trace:

org.apache.geronimo.common.DeploymentException: Could not access contents of a 
connector
        at 
org.apache.geronimo.j2ee.deployment.EARConfigBuilder.addModules(EARConfigBuilder.java:618)
        at 
org.apache.geronimo.j2ee.deployment.EARConfigBuilder.getEarPlan(EARConfigBuilder.java:222)
        at 
org.apache.geronimo.j2ee.deployment.EARConfigBuilder.getDeploymentPlan(EARConfigBuilder.java:118)
        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$$8327c217.getDeploymentPlan(<generated>)
        at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:145)
        at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:91)
        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:181)
        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:181)
        at 
org.apache.geronimo.kernel.jmx.MBeanServerDelegate.invoke(MBeanServerDelegate.java:117)
        at 
mx4j.remote.rmi.RMIConnectionInvoker.invoke(RMIConnectionInvoker.java:219)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java(Compiled
 Code))
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java(Compiled
 Code))
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java(Compiled
 Code))
        at java.lang.reflect.Method.invoke(Method.java(Compiled Code))
        at mx4j.remote.rmi.RMIConnectionProxy.invoke(RMIConnectionProxy.java:34)
        at 
mx4j.remote.rmi.RMIConnectionSubjectInvoker.chain(RMIConnectionSubjectInvoker.java:99)
        at 
mx4j.remote.rmi.RMIConnectionSubjectInvoker.access$000(RMIConnectionSubjectInvoker.java:31)
        at 
mx4j.remote.rmi.RMIConnectionSubjectInvoker$1.run(RMIConnectionSubjectInvoker.java:90)
        at java.security.AccessController.doPrivileged1(Native Method)
        at 
java.security.AccessController.doPrivileged(AccessController.java(Compiled 
Code))
        at javax.security.auth.Subject.doAsPrivileged(Subject.java:709)
        at mx4j.remote.MX4JRemoteUtils.subjectInvoke(MX4JRemoteUtils.java:163)
        at 
mx4j.remote.rmi.RMIConnectionSubjectInvoker.subjectInvoke(RMIConnectionSubjectInvoker.java:86)
        at 
mx4j.remote.rmi.RMIConnectionSubjectInvoker.invoke(RMIConnectionSubjectInvoker.java:80)
        at $Proxy0.invoke(Unknown Source)
        at 
javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:221)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java(Compiled
 Code))
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java(Compiled
 Code))
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java(Compiled
 Code))
        at java.lang.reflect.Method.invoke(Method.java(Compiled Code))
        at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:279)
        at sun.rmi.transport.Transport$1.run(Transport.java:164)
        at java.security.AccessController.doPrivileged1(Native Method)
        at 
java.security.AccessController.doPrivileged(AccessController.java(Compiled 
Code))
        at sun.rmi.transport.Transport.serviceCall(Transport.java:160)
        at 
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:505)
        at 
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.handleRequest(TCPTransport.java:837)
        at 
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:911)
        at java.lang.Thread.run(Thread.java:570)
Caused by: java.util.zip.ZipException: The system cannot find the path 
specified 
E:\program%20files\geronimo-1.0-M5\repository\tranql\rars\tranql-connector-derby-embed-xa-1.0.rar
        at java.util.zip.ZipFile.open(Native Method)
        at java.util.zip.ZipFile.<init>(ZipFile.java:140)
        at java.util.jar.JarFile.<init>(JarFile.java:160)
        at java.util.jar.JarFile.<init>(JarFile.java:98)
        at 
org.apache.geronimo.j2ee.deployment.EARConfigBuilder.addModules(EARConfigBuilder.java:616)
        ... 59 more

I changed my geronimo home directory to \program files\geronimo-1.0-M5.    
Looked at the EARConfigBuilder.java file and added some debug prints.   Seems 
the problem lies in the repository.getURL(pathURI) function:

                    try {
                        pathURL = repository.getURL(pathURI);   
                        System.out.println("***linsun***pathURI " + pathURI);   
  
                        System.out.println("***linsun***pathURL " + pathURL);   
             
                    } catch (MalformedURLException e) {
                        throw new DeploymentException("Could not locate " + 
moduleTypeName + " in repository", e);
                    }
                    try {
                        moduleFile = new JarFile(pathURL.getFile());
                    } catch (IOException e) {
                        throw new DeploymentException("Could not access 
contents of " + moduleTypeName, e);
                    }


Here is the output of the two println statements:

***linsun***pathURI tranql/rars/tranql-connector-derby-embed-xa-1.0.rar
***linsun***pathURL 
file:/E:/program%20files/geronimo-1.0-M5/repository/tranql/rars/tranql-connector-derby-embed-xa-1.0.rar

I looked at Repository.java and found out it is an Interface and doesn't 
contain any implementation of getURL() method.

Will look more into this...




> Deployer failed to deploy certain applications if geronimo is installed to a 
> directory that has space
> -----------------------------------------------------------------------------------------------------
>
>          Key: GERONIMO-1089
>          URL: http://issues.apache.org/jira/browse/GERONIMO-1089
>      Project: Geronimo
>         Type: Bug
>   Components: deployment
>     Versions: 1.0-M5
>  Environment: Windows + Tomcat 
>     Reporter: Lin Sun

>
> My geronimo is at directory e:\program 
> files\geronimo\modules\assembly\target\geronimo-1.0-M5.  When I deployed 
> daytrader, I got the following failure:
> e:\program 
> files\geronimo\modules\assembly\target\geronimo-1.0-M5\bin>deploy.bat
>  deploy "\program files\sandbox\samples\Trade\daytrader-ear-1.0-SNAPSHOT.ear" 
> "\
> program files\sandbox\samples\Trade\dayTrader-plan.xml"
> Username: system
> Password:
>     Error: Unable to distribute daytrader-ear-1.0-SNAPSHOT.ear: Bad path
>     to external module, a connector caused by Illegal character in
>     opaque part at index 2: e:\program
>     
> files\geronimo\modules\assembly\target\geronimo-1.0-M5\repository\tranql/rar
> s/tranql-connector-derby-embed-xa-1.0.rar
> This is caused by deployer not able to handle the "       
> <external-path>tranql/rars/tranql-connector-derby-embed-xa-1.0.rar</external-path>"
>  element specified in the daytrader-plan.xml.   
> If I broke the daytrader database resource plan to a seperate plan, I can 
> deploy the TradeDataSource as the workaround:
> e:\program 
> files\geronimo\modules\assembly\target\geronimo-1.0-M5\bin>deploy.bat
>  deploy "\program files\sandbox\samples\Trade\dayTrader-dbplan.xml" 
> ..\repositor
> y\tranql\rars\tranql-connector-derby-embed-xa-1.0.rar
> Username: system
> Password:
>     Deployed TradeDataSource
> Similar problem happens with the 
> "<external-rar>activemq/rars/activemq-ra-3.2-M1.rar</external-rar>" element.
> I don't mind digging more into this...any help/hints is appreciated.   I 
> figure I should start at deployer.log, but I didn't see a deployer.log 
> generated.    

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

Reply via email to