Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
3.0.1
-
None
-
MacOS X and SUN SDK 1.6.0_13"
Description
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);
Attachments
Issue Links
- blocks
-
TUSCANY-3261 Java EE Contribution Itests failing under MAC OS
-
- Closed
-
- is blocked by
-
OPENEJB-1252 URL->File decoding should avoid "+" in paths
-
- Closed
-
- is related to
-
OPENEJB-767 Paths with spaces may result in "Unable to scrape for @Stateful, @Stateless or @MessageDriven annotations"
-
- Closed
-