users@glassfish.java.net

Re: Could not expand entry META-INF\MANIFEST.MF into destination

From: Hong Zhang <Hong.Zhang_at_Sun.COM>
Date: Mon, 12 Mar 2007 14:57:44 -0500

Hi,
      From the stack trace, it seems the file destination (OutputStream)
is the one with problem (Access is denied) rather than any problem with
the tmp directory (where the archive was uploaded). Could you please
check if you have appropriate permissions in
"D:\Sun\AppServer\domains\domain1\applications\j2ee-modules" directory
in your installation?

      Your permissions are probably ok as this problem is only
intermittent to you. In my quick google search, I did find a similar jdk
bug
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4831749.
Unfortunately, this bug was never fixed.
      
       Have you ever run into this problem with other OS or it's just
windows?
 
       I could send you a patch which does not use NIO to write streams
and see whether it makes a difference. But I don't want to just commit
this into the workspace without knowing whether this is really the cause
of the problem. :-) It will be good if we could have a test case which
could reproduce the problem consistently.
 
       Thanks,

- Hong

>java.io.IOException: Error expanding archive D:\tmp\s1astempdomain1server-867388250\HelloEJBWS.jar; please see the server log file for more information
>
> at com.sun.enterprise.deployment.backend.J2EEModuleExploder.explodeJar(J2EEModuleExploder.java:346)
>
> at com.sun.enterprise.deployment.backend.EjbModuleDeployer.preDeploy(EjbModuleDeployer.java:121)
>
> at com.sun.enterprise.deployment.backend.ModuleDeployer.doRequestFinish(ModuleDeployer.java:152)
>
> at com.sun.enterprise.deployment.phasing.J2EECPhase.runPhase(J2EECPhase.java:169)
>
> at com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:95)
>
> at com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases(PEDeploymentService.java:871)
>
> at com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:266)
>
> at com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:739)
>
> at com.sun.enterprise.management.deploy.DeployThread.deploy(DeployThread.java:174)
>
> at com.sun.enterprise.management.deploy.DeployThread.run(DeployThread.java:210)
>
>Caused by: java.io.FileNotFoundException: D:\Sun\AppServer\domains\domain1\applications\j2ee-modules\HelloEJBWS\META-INF\MANIFEST.MF (Access is denied)
>
> at java.io.FileOutputStream.open(Native Method)
>
> at java.io.FileOutputStream.<init>(FileOutputStream.java:179)
>
> at java.io.FileOutputStream.<init>(FileOutputStream.java:131)
>
> at com.sun.enterprise.deployment.backend.J2EEModuleExploder.explodeJar(J2EEModuleExploder.java:318)
>
> ... 9 more
>
>|#]
>
>
>
>[#|2007-03-12T17:12:10.046+0000|WARNING|sun-appserver-pe9.0|javax.enterprise.system.tools.deployment|_ThreadID=16;_ThreadName=Thread-34;_RequestID=c160a0b8-b5f4-412e-82b6-d341afab8593;|Can't delete module Directory -- it isn't a directory: D:\Sun\AppServer\domains\domain1\applications\j2ee-modules\HelloEJBWS|#]
>
>