portals-jetspeed-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From a..@apache.org
Subject svn commit: r773443 - in /portals/jetspeed-2/portal/trunk/enterprise: ear-full/pom.xml ear-min/pom.xml
Date Mon, 11 May 2009 00:52:34 GMT
Author: ate
Date: Mon May 11 00:52:34 2009
New Revision: 773443

URL: http://svn.apache.org/viewvc?rev=773443&view=rev
Log:
JS2-973: Running Jetspeed 2.2 on Websphere 6.1 / Oracle10
see: http://issues.apache.org/jira/browse/JS2-973#action_12707301
- providing a workaround for the IBM JDK5 "bug" which causes "java.lang.TypeNotPresentException:
Type javax.xml.bind.annotation.XmlRootElement not present"
  error to be thrown when processing PortletEvents using jaxb.
  The only solution I could find was moving the jaxb-api jar up into the shared classloader.
  For a WAR based installation on Websphere, this should be done manually as we cannot or
won't "standardize" on moving such jars by default to the shared classloader.
  However, for an EAR installation, the shared classloader is more properly "contained", and
I have adjusted our enterprise ear builds to do this automatically now. 

Modified:
    portals/jetspeed-2/portal/trunk/enterprise/ear-full/pom.xml
    portals/jetspeed-2/portal/trunk/enterprise/ear-min/pom.xml

Modified: portals/jetspeed-2/portal/trunk/enterprise/ear-full/pom.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/enterprise/ear-full/pom.xml?rev=773443&r1=773442&r2=773443&view=diff
==============================================================================
--- portals/jetspeed-2/portal/trunk/enterprise/ear-full/pom.xml (original)
+++ portals/jetspeed-2/portal/trunk/enterprise/ear-full/pom.xml Mon May 11 00:52:34 2009
@@ -145,6 +145,28 @@
                 <!-- unpackage EAR -->
                 <delete dir="${project.build.directory}/package-skinny-wars"/>
                 <unjar src="${project.build.directory}/${project.build.finalName}.ear"
dest="${project.build.directory}/package-skinny-wars"/>
+                
+                <!-- 
+                  JS2-973: Websphere 6.1/IBM JDK5 workaround voor "java.lang.TypeNotPresentException:
Type javax.xml.bind.annotation.XmlRootElement not present" bug.
+                  This is a recognized issue, see for instance: https://issues.apache.org/jira/browse/TUSCANY-2519
+                  Workaround is extracting the jaxb-api-2.1.jar from the Jetspeed Portal
war and move it to the shared jars within the ear.                  
+                -->
+                <mkdir dir="${project.build.directory}/package-skinny-wars/tmp"/>
+                <unzip src="${project.build.directory}/package-skinny-wars/jetspeed-demo-${pom.version}.war"
dest="${project.build.directory}/package-skinny-wars/lib">
+                  <patternset>
+                    <include name="WEB-INF/lib/jaxb-api-*.jar"/>
+                  </patternset>
+                  <mapper type="flatten"/>
+                </unzip>
+                <move file="${project.build.directory}/package-skinny-wars/jetspeed-demo-${pom.version}.war"
todir="${project.build.directory}/package-skinny-wars/tmp"/>
+                <zip destfile="${project.build.directory}/package-skinny-wars/jetspeed-demo-${pom.version}.war">
+                    <zipfileset src="${project.build.directory}/package-skinny-wars/tmp/jetspeed-demo-${pom.version}.war">
+                    <exclude name="WEB-INF/lib/jaxb-api-*.jar"/>
+                  </zipfileset>
+                </zip>                
+                <delete dir="${project.build.directory}/package-skinny-wars/tmp"/>
+                <!--  end of JS2-973 workaround -->
+                
                 <!-- determine skinny wars classpath from lib jars -->
                 <pathconvert pathsep=" " property="war.manifest.classpath">
                   <map from="${project.build.directory}${file.separator}package-skinny-wars${file.separator}"
to=""/>

Modified: portals/jetspeed-2/portal/trunk/enterprise/ear-min/pom.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/enterprise/ear-min/pom.xml?rev=773443&r1=773442&r2=773443&view=diff
==============================================================================
--- portals/jetspeed-2/portal/trunk/enterprise/ear-min/pom.xml (original)
+++ portals/jetspeed-2/portal/trunk/enterprise/ear-min/pom.xml Mon May 11 00:52:34 2009
@@ -115,6 +115,28 @@
                 <!-- unpackage EAR -->
                 <delete dir="${project.build.directory}/package-skinny-wars"/>
                 <unjar src="${project.build.directory}/${project.build.finalName}.ear"
dest="${project.build.directory}/package-skinny-wars"/>
+                
+                <!-- 
+                  JS2-973: Websphere 6.1/IBM JDK5 workaround voor "java.lang.TypeNotPresentException:
Type javax.xml.bind.annotation.XmlRootElement not present" bug.
+                  This is a recognized issue, see for instance: https://issues.apache.org/jira/browse/TUSCANY-2519
+                  Workaround is extracting the jaxb-api-2.1.jar from the Jetspeed Portal
war and move it to the shared jars within the ear.                  
+                -->
+                <mkdir dir="${project.build.directory}/package-skinny-wars/tmp"/>
+                <unzip src="${project.build.directory}/package-skinny-wars/jetspeed-demo-${pom.version}.war"
dest="${project.build.directory}/package-skinny-wars/lib">
+                  <patternset>
+                    <include name="WEB-INF/lib/jaxb-api-*.jar"/>
+                  </patternset>
+                  <mapper type="flatten"/>
+                </unzip>
+                <move file="${project.build.directory}/package-skinny-wars/jetspeed-demo-${pom.version}.war"
todir="${project.build.directory}/package-skinny-wars/tmp"/>
+                <zip destfile="${project.build.directory}/package-skinny-wars/jetspeed-demo-${pom.version}.war">
+                    <zipfileset src="${project.build.directory}/package-skinny-wars/tmp/jetspeed-demo-${pom.version}.war">
+                    <exclude name="WEB-INF/lib/jaxb-api-*.jar"/>
+                  </zipfileset>
+                </zip>                
+                <delete dir="${project.build.directory}/package-skinny-wars/tmp"/>
+                <!--  end of JS2-973 workaround -->
+
                 <!-- determine skinny wars classpath from lib jars -->
                 <pathconvert pathsep=" " property="war.manifest.classpath">
                   <map from="${project.build.directory}${file.separator}package-skinny-wars${file.separator}"
to=""/>



---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org


Mime
View raw message