You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geronimo.apache.org by "Sandip Ghayal (JIRA)" <de...@geronimo.apache.org> on 2005/03/09 22:47:53 UTC

[jira] Created: (GERONIMO-602) Ear deployment fails when EJB Jar is in subdirectory

Ear deployment fails when EJB Jar is in subdirectory
----------------------------------------------------

         Key: GERONIMO-602
         URL: http://issues.apache.org/jira/browse/GERONIMO-602
     Project: Geronimo
        Type: Bug
  Components: deployment  
    Versions: 1.0-M4    
 Environment: Windows XP, Code version# 156064
    Reporter: Sandip Ghayal
 Attachments: TestApplication.ear, deployment_sg.txt

When deploying Attached Ear file where EJB is located under sub directory one would get errors like

java.io.FileNotFoundException: F:\geronimo\geronimo\modules\assembly\target\gero
nimo-1.0-SNAPSHOT\config-store\17\testApplication\testEJB.jar (The system cannot
 find the path specified)
        at java.io.FileOutputStream.open(Native Method)
        at java.io.FileOutputStream.<init>(FileOutputStream.java:179)
        at java.io.FileOutputStream.<init>(FileOutputStream.java:131)
        at org.apache.geronimo.deployment.util.DeploymentUtil.copyFile(Deploymen
tUtil.java:92)
        at org.apache.geronimo.deployment.util.DeploymentUtil.copyToPackedJar(De
ploymentUtil.java:192)
        at org.apache.geronimo.deployment.DeploymentContext.addIncludeAsPackedJa
r(DeploymentContext.java:238)
        at org.openejb.deployment.OpenEJBModuleBuilder.installModule(OpenEJBModu
leBuilder.java:288)
        at org.openejb.deployment.OpenEJBModuleBuilder$$FastClassByCGLIB$$11bd7b
20.invoke(<generated>)
        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
        at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
Invoker.java:38)
        at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
n.java:118)
        at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
java:710)
        at org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:5
7)
        at org.apache.geronimo.kernel.proxy.RawOperationInvoker.invoke(RawOperat
ionInvoker.java:36)
        at org.apache.geronimo.kernel.proxy.ProxyMethodInterceptor.intercept(Pro
xyMethodInterceptor.java:92)
        at org.apache.geronimo.j2ee.deployment.ModuleBuilder$$EnhancerByCGLIB$$3
80f6faf.installModule(<generated>)
        at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfigurati
on(EARConfigBuilder.java:316)
        at org.apache.geronimo.j2ee.deployment.EARConfigBuilder$$FastClassByCGLI
B$$38e56ec6.invoke(<generated>)
        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
        at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
Invoker.java:38)
        at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
n.java:118)
        at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
java:710)
        at org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:5
7)
        at org.apache.geronimo.kernel.proxy.RawOperationInvoker.invoke(RawOperat
ionInvoker.java:36)
        at org.apache.geronimo.kernel.proxy.ProxyMethodInterceptor.intercept(Pro
xyMethodInterceptor.java:92)
        at org.apache.geronimo.deployment.ConfigurationBuilder$$EnhancerByCGLIB$
$661d6fa5.buildConfiguration(<generated>)
        at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:172)
        at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:85)
        at org.apache.geronimo.deployment.Deployer$$FastClassByCGLIB$$734a235d.i
nvoke(<generated>)
        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
        at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
Invoker.java:38)
        at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
n.java:118)
        at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
java:745)
        at org.apache.geronimo.kernel.Kernel.invoke(Kernel.java:299)
        at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:121)
        at org.apache.geronimo.kernel.KernelGBean$$FastClassByCGLIB$$1cccefc9.in
voke(<generated>)
        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
        at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
Invoker.java:38)
        at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
n.java:118)
        at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
java:745)
        at org.apache.geronimo.kernel.Kernel.invoke(Kernel.java:299)
        at org.apache.geronimo.kernel.jmx.MBeanServerDelegate.invoke(MBeanServer
Delegate.java:117)
        at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnecti
onImpl.java:1408)
        at javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectio
nImpl.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(R
MIConnectionImpl.java:1348)
        at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImp
l.java:782)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.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:4
60)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport
.java:701)
        at java.lang.Thread.run(Thread.java:595)


On investigation it was found that the copy method in the DeploymentUtil.java didn't handle directories and sub-directories properly.

Modified the code to handle sub-directories properly and have attached the fix for it.

I am no sure about standard Geronimo uses for File.separatorChar so I have replaced all possible File Separators with System specific separators. 

Can some one review this fix and if have issues then open up discussion.

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Assigned: (GERONIMO-602) Ear deployment fails when EJB Jar is in subdirectory

Posted by "Gianny DAMOUR (JIRA)" <de...@geronimo.apache.org>.
     [ http://issues.apache.org/jira/browse/GERONIMO-602?page=history ]

Gianny DAMOUR reassigned GERONIMO-602:
--------------------------------------

    Assign To: Gianny DAMOUR

> Ear deployment fails when EJB Jar is in subdirectory
> ----------------------------------------------------
>
>          Key: GERONIMO-602
>          URL: http://issues.apache.org/jira/browse/GERONIMO-602
>      Project: Geronimo
>         Type: Bug
>   Components: deployment
>     Versions: 1.0-M4
>  Environment: Windows XP, Code version# 156064
>     Reporter: Sandip Ghayal
>     Assignee: Gianny DAMOUR
>  Attachments: TestApplication.ear, deployment_sg.txt
>
> When deploying Attached Ear file where EJB is located under sub directory one would get errors like
> java.io.FileNotFoundException: F:\geronimo\geronimo\modules\assembly\target\gero
> nimo-1.0-SNAPSHOT\config-store\17\testApplication\testEJB.jar (The system cannot
>  find the path specified)
>         at java.io.FileOutputStream.open(Native Method)
>         at java.io.FileOutputStream.<init>(FileOutputStream.java:179)
>         at java.io.FileOutputStream.<init>(FileOutputStream.java:131)
>         at org.apache.geronimo.deployment.util.DeploymentUtil.copyFile(Deploymen
> tUtil.java:92)
>         at org.apache.geronimo.deployment.util.DeploymentUtil.copyToPackedJar(De
> ploymentUtil.java:192)
>         at org.apache.geronimo.deployment.DeploymentContext.addIncludeAsPackedJa
> r(DeploymentContext.java:238)
>         at org.openejb.deployment.OpenEJBModuleBuilder.installModule(OpenEJBModu
> leBuilder.java:288)
>         at org.openejb.deployment.OpenEJBModuleBuilder$$FastClassByCGLIB$$11bd7b
> 20.invoke(<generated>)
>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
> Invoker.java:38)
>         at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
> n.java:118)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
> java:710)
>         at org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:5
> 7)
>         at org.apache.geronimo.kernel.proxy.RawOperationInvoker.invoke(RawOperat
> ionInvoker.java:36)
>         at org.apache.geronimo.kernel.proxy.ProxyMethodInterceptor.intercept(Pro
> xyMethodInterceptor.java:92)
>         at org.apache.geronimo.j2ee.deployment.ModuleBuilder$$EnhancerByCGLIB$$3
> 80f6faf.installModule(<generated>)
>         at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfigurati
> on(EARConfigBuilder.java:316)
>         at org.apache.geronimo.j2ee.deployment.EARConfigBuilder$$FastClassByCGLI
> B$$38e56ec6.invoke(<generated>)
>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
> Invoker.java:38)
>         at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
> n.java:118)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
> java:710)
>         at org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:5
> 7)
>         at org.apache.geronimo.kernel.proxy.RawOperationInvoker.invoke(RawOperat
> ionInvoker.java:36)
>         at org.apache.geronimo.kernel.proxy.ProxyMethodInterceptor.intercept(Pro
> xyMethodInterceptor.java:92)
>         at org.apache.geronimo.deployment.ConfigurationBuilder$$EnhancerByCGLIB$
> $661d6fa5.buildConfiguration(<generated>)
>         at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:172)
>         at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:85)
>         at org.apache.geronimo.deployment.Deployer$$FastClassByCGLIB$$734a235d.i
> nvoke(<generated>)
>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
> Invoker.java:38)
>         at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
> n.java:118)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
> java:745)
>         at org.apache.geronimo.kernel.Kernel.invoke(Kernel.java:299)
>         at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:121)
>         at org.apache.geronimo.kernel.KernelGBean$$FastClassByCGLIB$$1cccefc9.in
> voke(<generated>)
>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
> Invoker.java:38)
>         at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
> n.java:118)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
> java:745)
>         at org.apache.geronimo.kernel.Kernel.invoke(Kernel.java:299)
>         at org.apache.geronimo.kernel.jmx.MBeanServerDelegate.invoke(MBeanServer
> Delegate.java:117)
>         at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnecti
> onImpl.java:1408)
>         at javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectio
> nImpl.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(R
> MIConnectionImpl.java:1348)
>         at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImp
> l.java:782)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
> java:39)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> sorImpl.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:4
> 60)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport
> .java:701)
>         at java.lang.Thread.run(Thread.java:595)
> On investigation it was found that the copy method in the DeploymentUtil.java didn't handle directories and sub-directories properly.
> Modified the code to handle sub-directories properly and have attached the fix for it.
> I am no sure about standard Geronimo uses for File.separatorChar so I have replaced all possible File Separators with System specific separators. 
> Can some one review this fix and if have issues then open up discussion.

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Updated: (GERONIMO-602) Ear deployment fails when EJB Jar is in subdirectory

Posted by "Sandip Ghayal (JIRA)" <de...@geronimo.apache.org>.
     [ http://issues.apache.org/jira/browse/GERONIMO-602?page=history ]

Sandip Ghayal updated GERONIMO-602:
-----------------------------------

    Attachment: TestApplication.ear
                deployment_sg.txt

TestApplication.ear file is the file used for deployment.

deployment_sg.txt is the fix that I have created for the issue.

Please feel free to comment on the fix or let me know if there is any better solution to this

> Ear deployment fails when EJB Jar is in subdirectory
> ----------------------------------------------------
>
>          Key: GERONIMO-602
>          URL: http://issues.apache.org/jira/browse/GERONIMO-602
>      Project: Geronimo
>         Type: Bug
>   Components: deployment
>     Versions: 1.0-M4
>  Environment: Windows XP, Code version# 156064
>     Reporter: Sandip Ghayal
>  Attachments: TestApplication.ear, deployment_sg.txt
>
> When deploying Attached Ear file where EJB is located under sub directory one would get errors like
> java.io.FileNotFoundException: F:\geronimo\geronimo\modules\assembly\target\gero
> nimo-1.0-SNAPSHOT\config-store\17\testApplication\testEJB.jar (The system cannot
>  find the path specified)
>         at java.io.FileOutputStream.open(Native Method)
>         at java.io.FileOutputStream.<init>(FileOutputStream.java:179)
>         at java.io.FileOutputStream.<init>(FileOutputStream.java:131)
>         at org.apache.geronimo.deployment.util.DeploymentUtil.copyFile(Deploymen
> tUtil.java:92)
>         at org.apache.geronimo.deployment.util.DeploymentUtil.copyToPackedJar(De
> ploymentUtil.java:192)
>         at org.apache.geronimo.deployment.DeploymentContext.addIncludeAsPackedJa
> r(DeploymentContext.java:238)
>         at org.openejb.deployment.OpenEJBModuleBuilder.installModule(OpenEJBModu
> leBuilder.java:288)
>         at org.openejb.deployment.OpenEJBModuleBuilder$$FastClassByCGLIB$$11bd7b
> 20.invoke(<generated>)
>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
> Invoker.java:38)
>         at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
> n.java:118)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
> java:710)
>         at org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:5
> 7)
>         at org.apache.geronimo.kernel.proxy.RawOperationInvoker.invoke(RawOperat
> ionInvoker.java:36)
>         at org.apache.geronimo.kernel.proxy.ProxyMethodInterceptor.intercept(Pro
> xyMethodInterceptor.java:92)
>         at org.apache.geronimo.j2ee.deployment.ModuleBuilder$$EnhancerByCGLIB$$3
> 80f6faf.installModule(<generated>)
>         at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfigurati
> on(EARConfigBuilder.java:316)
>         at org.apache.geronimo.j2ee.deployment.EARConfigBuilder$$FastClassByCGLI
> B$$38e56ec6.invoke(<generated>)
>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
> Invoker.java:38)
>         at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
> n.java:118)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
> java:710)
>         at org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:5
> 7)
>         at org.apache.geronimo.kernel.proxy.RawOperationInvoker.invoke(RawOperat
> ionInvoker.java:36)
>         at org.apache.geronimo.kernel.proxy.ProxyMethodInterceptor.intercept(Pro
> xyMethodInterceptor.java:92)
>         at org.apache.geronimo.deployment.ConfigurationBuilder$$EnhancerByCGLIB$
> $661d6fa5.buildConfiguration(<generated>)
>         at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:172)
>         at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:85)
>         at org.apache.geronimo.deployment.Deployer$$FastClassByCGLIB$$734a235d.i
> nvoke(<generated>)
>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
> Invoker.java:38)
>         at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
> n.java:118)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
> java:745)
>         at org.apache.geronimo.kernel.Kernel.invoke(Kernel.java:299)
>         at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:121)
>         at org.apache.geronimo.kernel.KernelGBean$$FastClassByCGLIB$$1cccefc9.in
> voke(<generated>)
>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
> Invoker.java:38)
>         at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
> n.java:118)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
> java:745)
>         at org.apache.geronimo.kernel.Kernel.invoke(Kernel.java:299)
>         at org.apache.geronimo.kernel.jmx.MBeanServerDelegate.invoke(MBeanServer
> Delegate.java:117)
>         at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnecti
> onImpl.java:1408)
>         at javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectio
> nImpl.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(R
> MIConnectionImpl.java:1348)
>         at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImp
> l.java:782)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
> java:39)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> sorImpl.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:4
> 60)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport
> .java:701)
>         at java.lang.Thread.run(Thread.java:595)
> On investigation it was found that the copy method in the DeploymentUtil.java didn't handle directories and sub-directories properly.
> Modified the code to handle sub-directories properly and have attached the fix for it.
> I am no sure about standard Geronimo uses for File.separatorChar so I have replaced all possible File Separators with System specific separators. 
> Can some one review this fix and if have issues then open up discussion.

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Closed: (GERONIMO-602) Ear deployment fails when EJB Jar is in subdirectory

Posted by "Gianny DAMOUR (JIRA)" <de...@geronimo.apache.org>.
     [ http://issues.apache.org/jira/browse/GERONIMO-602?page=history ]
     
Gianny DAMOUR closed GERONIMO-602:
----------------------------------

     Resolution: Fixed
    Fix Version: 1.0-M4

Thanks for this patch Sandip.

> Ear deployment fails when EJB Jar is in subdirectory
> ----------------------------------------------------
>
>          Key: GERONIMO-602
>          URL: http://issues.apache.org/jira/browse/GERONIMO-602
>      Project: Geronimo
>         Type: Bug
>   Components: deployment
>     Versions: 1.0-M4
>  Environment: Windows XP, Code version# 156064
>     Reporter: Sandip Ghayal
>     Assignee: Gianny DAMOUR
>      Fix For: 1.0-M4
>  Attachments: TestApplication.ear, deployment_sg.txt
>
> When deploying Attached Ear file where EJB is located under sub directory one would get errors like
> java.io.FileNotFoundException: F:\geronimo\geronimo\modules\assembly\target\gero
> nimo-1.0-SNAPSHOT\config-store\17\testApplication\testEJB.jar (The system cannot
>  find the path specified)
>         at java.io.FileOutputStream.open(Native Method)
>         at java.io.FileOutputStream.<init>(FileOutputStream.java:179)
>         at java.io.FileOutputStream.<init>(FileOutputStream.java:131)
>         at org.apache.geronimo.deployment.util.DeploymentUtil.copyFile(Deploymen
> tUtil.java:92)
>         at org.apache.geronimo.deployment.util.DeploymentUtil.copyToPackedJar(De
> ploymentUtil.java:192)
>         at org.apache.geronimo.deployment.DeploymentContext.addIncludeAsPackedJa
> r(DeploymentContext.java:238)
>         at org.openejb.deployment.OpenEJBModuleBuilder.installModule(OpenEJBModu
> leBuilder.java:288)
>         at org.openejb.deployment.OpenEJBModuleBuilder$$FastClassByCGLIB$$11bd7b
> 20.invoke(<generated>)
>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
> Invoker.java:38)
>         at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
> n.java:118)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
> java:710)
>         at org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:5
> 7)
>         at org.apache.geronimo.kernel.proxy.RawOperationInvoker.invoke(RawOperat
> ionInvoker.java:36)
>         at org.apache.geronimo.kernel.proxy.ProxyMethodInterceptor.intercept(Pro
> xyMethodInterceptor.java:92)
>         at org.apache.geronimo.j2ee.deployment.ModuleBuilder$$EnhancerByCGLIB$$3
> 80f6faf.installModule(<generated>)
>         at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfigurati
> on(EARConfigBuilder.java:316)
>         at org.apache.geronimo.j2ee.deployment.EARConfigBuilder$$FastClassByCGLI
> B$$38e56ec6.invoke(<generated>)
>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
> Invoker.java:38)
>         at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
> n.java:118)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
> java:710)
>         at org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:5
> 7)
>         at org.apache.geronimo.kernel.proxy.RawOperationInvoker.invoke(RawOperat
> ionInvoker.java:36)
>         at org.apache.geronimo.kernel.proxy.ProxyMethodInterceptor.intercept(Pro
> xyMethodInterceptor.java:92)
>         at org.apache.geronimo.deployment.ConfigurationBuilder$$EnhancerByCGLIB$
> $661d6fa5.buildConfiguration(<generated>)
>         at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:172)
>         at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:85)
>         at org.apache.geronimo.deployment.Deployer$$FastClassByCGLIB$$734a235d.i
> nvoke(<generated>)
>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
> Invoker.java:38)
>         at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
> n.java:118)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
> java:745)
>         at org.apache.geronimo.kernel.Kernel.invoke(Kernel.java:299)
>         at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:121)
>         at org.apache.geronimo.kernel.KernelGBean$$FastClassByCGLIB$$1cccefc9.in
> voke(<generated>)
>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
> Invoker.java:38)
>         at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
> n.java:118)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
> java:745)
>         at org.apache.geronimo.kernel.Kernel.invoke(Kernel.java:299)
>         at org.apache.geronimo.kernel.jmx.MBeanServerDelegate.invoke(MBeanServer
> Delegate.java:117)
>         at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnecti
> onImpl.java:1408)
>         at javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectio
> nImpl.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(R
> MIConnectionImpl.java:1348)
>         at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImp
> l.java:782)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
> java:39)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> sorImpl.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:4
> 60)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport
> .java:701)
>         at java.lang.Thread.run(Thread.java:595)
> On investigation it was found that the copy method in the DeploymentUtil.java didn't handle directories and sub-directories properly.
> Modified the code to handle sub-directories properly and have attached the fix for it.
> I am no sure about standard Geronimo uses for File.separatorChar so I have replaced all possible File Separators with System specific separators. 
> Can some one review this fix and if have issues then open up discussion.

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


Re: [jira] Commented: (GERONIMO-602) Ear deployment fails when EJB Jar is in subdirectory

Posted by Sandip Ghayal <sg...@yahoo.com>.
Hi Gianny,

Thanks for looking into the issue.

Its systematic failure. I was running with jdk1.4.2_03
on windows-xp.

Its strange that it worked for you. As per my
debugging  the failure was because Geronimo was trying
to open file as output file under a subdirectory
though sub-directory was not present and thus causing
this failure.

Though as per JavaDocs we are throwing proper
exception but I think we should be able to handle
EJB's deployed as part of applications and jar file
for the EJB is under sub-directory.

Also if you look at the fix I submitted its really
simple fix. What the fix does is it ensures that
before creating output file, entire directory
structure is present. And my feeling is if it worked
for you, it might not work for someone else (like me
:-) )

Cheers,

Sandip

--- "Gianny DAMOUR (JIRA)" <de...@geronimo.apache.org>
wrote:

>      [
>
http://issues.apache.org/jira/browse/GERONIMO-602?page=comments#action_60679
> ]
>      
> Gianny DAMOUR commented on GERONIMO-602:
> ----------------------------------------
> 
> Just a quick question for you Sandip: is it a
> systematic failure or is it only transient?
> 
> Based on the JavaDoc (see below), it seems to me
> that the implementation should work "as is".
> 
> "
> @exception  FileNotFoundException  if the file
> exists but is a directory rather than a regular
> file, does not exist but cannot be created, or
> cannot be opened for any other reason.
> "
> 
> I tried the provided EAR also on Windows and it was
> OK.
> 
> I am using:
> Java(TM) 2 Runtime Environment, Standard Edition
> (build 1.4.2-b28)
> Java HotSpot(TM) Client VM (build 1.4.2-b28, mixed
> mode)
> 
> on Windows XP.
>  
> 
> > Ear deployment fails when EJB Jar is in
> subdirectory
> >
> ----------------------------------------------------
> >
> >          Key: GERONIMO-602
> >          URL:
> http://issues.apache.org/jira/browse/GERONIMO-602
> >      Project: Geronimo
> >         Type: Bug
> >   Components: deployment
> >     Versions: 1.0-M4
> >  Environment: Windows XP, Code version# 156064
> >     Reporter: Sandip Ghayal
> >  Attachments: TestApplication.ear,
> deployment_sg.txt
> >
> > When deploying Attached Ear file where EJB is
> located under sub directory one would get errors
> like
> > java.io.FileNotFoundException:
> F:\geronimo\geronimo\modules\assembly\target\gero
> >
>
nimo-1.0-SNAPSHOT\config-store\17\testApplication\testEJB.jar
> (The system cannot
> >  find the path specified)
> >         at java.io.FileOutputStream.open(Native
> Method)
> >         at
>
java.io.FileOutputStream.<init>(FileOutputStream.java:179)
> >         at
>
java.io.FileOutputStream.<init>(FileOutputStream.java:131)
> >         at
>
org.apache.geronimo.deployment.util.DeploymentUtil.copyFile(Deploymen
> > tUtil.java:92)
> >         at
>
org.apache.geronimo.deployment.util.DeploymentUtil.copyToPackedJar(De
> > ploymentUtil.java:192)
> >         at
>
org.apache.geronimo.deployment.DeploymentContext.addIncludeAsPackedJa
> > r(DeploymentContext.java:238)
> >         at
>
org.openejb.deployment.OpenEJBModuleBuilder.installModule(OpenEJBModu
> > leBuilder.java:288)
> >         at
>
org.openejb.deployment.OpenEJBModuleBuilder$$FastClassByCGLIB$$11bd7b
> > 20.invoke(<generated>)
> >         at
>
net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
> >         at
>
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
> > Invoker.java:38)
> >         at
>
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
> > n.java:118)
> >         at
>
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
> > java:710)
> >         at
>
org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:5
> > 7)
> >         at
>
org.apache.geronimo.kernel.proxy.RawOperationInvoker.invoke(RawOperat
> > ionInvoker.java:36)
> >         at
>
org.apache.geronimo.kernel.proxy.ProxyMethodInterceptor.intercept(Pro
> > xyMethodInterceptor.java:92)
> >         at
>
org.apache.geronimo.j2ee.deployment.ModuleBuilder$$EnhancerByCGLIB$$3
> > 80f6faf.installModule(<generated>)
> >         at
>
org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfigurati
> > on(EARConfigBuilder.java:316)
> >         at
>
org.apache.geronimo.j2ee.deployment.EARConfigBuilder$$FastClassByCGLI
> > B$$38e56ec6.invoke(<generated>)
> >         at
>
net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
> >         at
>
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
> > Invoker.java:38)
> >         at
>
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
> > n.java:118)
> >         at
>
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
> > java:710)
> >         at
>
org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:5
> > 7)
> >         at
>
org.apache.geronimo.kernel.proxy.RawOperationInvoker.invoke(RawOperat
> > ionInvoker.java:36)
> >         at
>
org.apache.geronimo.kernel.proxy.ProxyMethodInterceptor.intercept(Pro
> > xyMethodInterceptor.java:92)
> >         at
>
org.apache.geronimo.deployment.ConfigurationBuilder$$EnhancerByCGLIB$
> > $661d6fa5.buildConfiguration(<generated>)
> >         at
>
org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:172)
> >         at
>
org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:85)
> >         at
>
org.apache.geronimo.deployment.Deployer$$FastClassByCGLIB$$734a235d.i
> > nvoke(<generated>)
> >         at
>
net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
> >         at
>
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
> > Invoker.java:38)
> >         at
>
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
> > n.java:118)
> >         at
>
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
> > java:745)
> >         at
>
org.apache.geronimo.kernel.Kernel.invoke(Kernel.java:299)
> >         at
>
org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:121)
> >         at
>
org.apache.geronimo.kernel.KernelGBean$$FastClassByCGLIB$$1cccefc9.in
> > voke(<generated>)
> >         at
>
net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
> >         at
>
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
> > Invoker.java:38)
> >         at
>
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
> > n.java:118)
> >         at
>
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
> > java:745)
> >         at
>
org.apache.geronimo.kernel.Kernel.invoke(Kernel.java:299)
> >         at
>
org.apache.geronimo.kernel.jmx.MBeanServerDelegate.invoke(MBeanServer
> > Delegate.java:117)
> >         at
>
javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnecti
> > onImpl.java:1408)
> >         at
>
javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectio
> > nImpl.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(R
> > MIConnectionImpl.java:1348)
> >         at
>
javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImp
> > l.java:782)
> >         at
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)
> >         at
>
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
> > java:39)
> >         at
>
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> > sorImpl.java:25)
> >         at
> java.lang.reflect.Method.invoke(Method.java:585)
> 
=== message truncated ===



		
__________________________________ 
Do you Yahoo!? 
Yahoo! Small Business - Try our new resources site!
http://smallbusiness.yahoo.com/resources/ 

[jira] Commented: (GERONIMO-602) Ear deployment fails when EJB Jar is in subdirectory

Posted by "Gianny DAMOUR (JIRA)" <de...@geronimo.apache.org>.
     [ http://issues.apache.org/jira/browse/GERONIMO-602?page=comments#action_60679 ]
     
Gianny DAMOUR commented on GERONIMO-602:
----------------------------------------

Just a quick question for you Sandip: is it a systematic failure or is it only transient?

Based on the JavaDoc (see below), it seems to me that the implementation should work "as is".

"
@exception  FileNotFoundException  if the file exists but is a directory rather than a regular file, does not exist but cannot be created, or cannot be opened for any other reason.
"

I tried the provided EAR also on Windows and it was OK.

I am using:
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2-b28)
Java HotSpot(TM) Client VM (build 1.4.2-b28, mixed mode)

on Windows XP.
 

> Ear deployment fails when EJB Jar is in subdirectory
> ----------------------------------------------------
>
>          Key: GERONIMO-602
>          URL: http://issues.apache.org/jira/browse/GERONIMO-602
>      Project: Geronimo
>         Type: Bug
>   Components: deployment
>     Versions: 1.0-M4
>  Environment: Windows XP, Code version# 156064
>     Reporter: Sandip Ghayal
>  Attachments: TestApplication.ear, deployment_sg.txt
>
> When deploying Attached Ear file where EJB is located under sub directory one would get errors like
> java.io.FileNotFoundException: F:\geronimo\geronimo\modules\assembly\target\gero
> nimo-1.0-SNAPSHOT\config-store\17\testApplication\testEJB.jar (The system cannot
>  find the path specified)
>         at java.io.FileOutputStream.open(Native Method)
>         at java.io.FileOutputStream.<init>(FileOutputStream.java:179)
>         at java.io.FileOutputStream.<init>(FileOutputStream.java:131)
>         at org.apache.geronimo.deployment.util.DeploymentUtil.copyFile(Deploymen
> tUtil.java:92)
>         at org.apache.geronimo.deployment.util.DeploymentUtil.copyToPackedJar(De
> ploymentUtil.java:192)
>         at org.apache.geronimo.deployment.DeploymentContext.addIncludeAsPackedJa
> r(DeploymentContext.java:238)
>         at org.openejb.deployment.OpenEJBModuleBuilder.installModule(OpenEJBModu
> leBuilder.java:288)
>         at org.openejb.deployment.OpenEJBModuleBuilder$$FastClassByCGLIB$$11bd7b
> 20.invoke(<generated>)
>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
> Invoker.java:38)
>         at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
> n.java:118)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
> java:710)
>         at org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:5
> 7)
>         at org.apache.geronimo.kernel.proxy.RawOperationInvoker.invoke(RawOperat
> ionInvoker.java:36)
>         at org.apache.geronimo.kernel.proxy.ProxyMethodInterceptor.intercept(Pro
> xyMethodInterceptor.java:92)
>         at org.apache.geronimo.j2ee.deployment.ModuleBuilder$$EnhancerByCGLIB$$3
> 80f6faf.installModule(<generated>)
>         at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfigurati
> on(EARConfigBuilder.java:316)
>         at org.apache.geronimo.j2ee.deployment.EARConfigBuilder$$FastClassByCGLI
> B$$38e56ec6.invoke(<generated>)
>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
> Invoker.java:38)
>         at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
> n.java:118)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
> java:710)
>         at org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:5
> 7)
>         at org.apache.geronimo.kernel.proxy.RawOperationInvoker.invoke(RawOperat
> ionInvoker.java:36)
>         at org.apache.geronimo.kernel.proxy.ProxyMethodInterceptor.intercept(Pro
> xyMethodInterceptor.java:92)
>         at org.apache.geronimo.deployment.ConfigurationBuilder$$EnhancerByCGLIB$
> $661d6fa5.buildConfiguration(<generated>)
>         at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:172)
>         at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:85)
>         at org.apache.geronimo.deployment.Deployer$$FastClassByCGLIB$$734a235d.i
> nvoke(<generated>)
>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
> Invoker.java:38)
>         at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
> n.java:118)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
> java:745)
>         at org.apache.geronimo.kernel.Kernel.invoke(Kernel.java:299)
>         at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:121)
>         at org.apache.geronimo.kernel.KernelGBean$$FastClassByCGLIB$$1cccefc9.in
> voke(<generated>)
>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethod
> Invoker.java:38)
>         at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperatio
> n.java:118)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.
> java:745)
>         at org.apache.geronimo.kernel.Kernel.invoke(Kernel.java:299)
>         at org.apache.geronimo.kernel.jmx.MBeanServerDelegate.invoke(MBeanServer
> Delegate.java:117)
>         at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnecti
> onImpl.java:1408)
>         at javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectio
> nImpl.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(R
> MIConnectionImpl.java:1348)
>         at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImp
> l.java:782)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
> java:39)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> sorImpl.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:4
> 60)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport
> .java:701)
>         at java.lang.Thread.run(Thread.java:595)
> On investigation it was found that the copy method in the DeploymentUtil.java didn't handle directories and sub-directories properly.
> Modified the code to handle sub-directories properly and have attached the fix for it.
> I am no sure about standard Geronimo uses for File.separatorChar so I have replaced all possible File Separators with System specific separators. 
> Can some one review this fix and if have issues then open up discussion.

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira