tomee-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Luciano Resende (JIRA)" <j...@apache.org>
Subject [jira] Created: (OPENEJB-1068) org.apache.openejb.OpenEJBException: Unable to extract jar. in MacOS X
Date Wed, 02 Sep 2009 21:56:32 GMT
org.apache.openejb.OpenEJBException: Unable to extract jar.  in MacOS X
-----------------------------------------------------------------------

                 Key: OPENEJB-1068
                 URL: https://issues.apache.org/jira/browse/OPENEJB-1068
             Project: OpenEJB
          Issue Type: Bug
          Components: deployment
    Affects Versions: 3.0.1
         Environment: MacOS X and SUN SDK 1.6.0_13"
            Reporter: Luciano Resende
             Fix For: 3.0.1


OpenEJBExceptions trying to introspect WebArchive :
Caused by: org.apache.tuscany.sca.contribution.service.ContributionReadException:
org.apache.openejb.OpenEJBException: Unable to extract jar. error in
opening zip file: error in opening zip file
       at org.apache.tuscany.sca.contribution.jee.JavaEEModuleHelper.getMetadataCompleteModules(JavaEEModuleHelper.java:42)
       at org.apache.tuscany.sca.contribution.jee.impl.JavaEEIntrospectorImpl.introspectWebArchive(JavaEEIntrospectorImpl.java:80)

This seems like a openEJB bug, Mac OS X are generating temp files with
(+) in the names (e.g
/var/folders/PI/PIxzw8eOGJmebuUgCle+ek+++TI/-Tmp-/temp4648477624506672403.war)
and the code in their DeploymentLoader file tries to decode the file
name causing the plus sign to be substituted by spaces thus causing a
the file path to be invalid and generating a internal exception. The
patch below seems to resolve this problem, but I'm not very familiar
with the OpenEJB code  to calim this is a  proper fix

Index: openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java
===================================================================
--- openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java  (revision
810677)
+++ openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java  (working
copy)
@@ -148,7 +148,8 @@
                return appModule;
            } else if (WebModule.class.equals(moduleClass)) {
                String moduleId = toFile(baseUrl).getName();
-                String warPath = URLs.toFilePath(baseUrl);
+                //String warPath = URLs.toFilePath(baseUrl);
+                String warPath = baseUrl.getPath();

                AppModule appModule = new
AppModule(OpenEJB.class.getClassLoader(), warPath);
                addWebModule(appModule, warPath,
OpenEJB.class.getClassLoader(), null, moduleId);

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message