You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by "David Blevins (JIRA)" <ji...@apache.org> on 2010/04/01 14:04:28 UTC

[jira] Commented: (OPENEJB-1068) org.apache.openejb.OpenEJBException: Unable to extract jar. in MacOS X

    [ https://issues.apache.org/jira/browse/OPENEJB-1068?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12852349#action_12852349 ] 

David Blevins commented on OPENEJB-1068:
----------------------------------------

Came up with an approach that should work better in all platforms.  Yanked the code from Harmony. If it works for them, it should be fine for us.  See OPENEJB-1252

This is committed into the 3.1.x branch, but can add it to 3.0.x as well.

> 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
>            Assignee: David Blevins
>             Fix For: 3.0.2
>
>
> 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.