[ http://issues.apache.org/jira/browse/JS2-210?page=history ]
     
Ate Douma resolved JS2-210:
---------------------------

     Resolution: Fixed
    Fix Version: 2.0-dev/cvs
                 2.0-M2

Its done. The branch is merged with CVS HEAD.

For JBoss support I have updated (and simplyfied) instructions:

build jetspeed-2 for Tomcat (5 or 5.5) with:
  maven allClean allBuild quickStart

copy the contents of $TOMCAT_HOME/webapps/jetspeed into 
$JBOSS/server/default/deploy/jetspeed.war.

remove commons-logging-<version>.jar and log4j-<version>.jar from 
jetspeed.war/lib 

copy the contents of $TOMCAT/shared/lib into $JBOSS/server/default/lib 
(presuming $TOMCAT/shared/lib was empty before building).

check $JBOSS/server/default/deploy/jbossweb-tomcat50.sar/server.xml:
- element DefaultContext attribute crossContext="true" (which is the default)

change 
$JBOSS/server/default/deploy/jbossweb-tomcat50.sar/META-INF/jboss-service.xml:
- <atttribute name="Java2ClassLoadingCompliance">false</attribute>
- <attribute name="UseJBossWebLoader">false</attribute>

change 
$JBOSS/server/default/deploy/jetspeed.war/WEB-INF/assembly/jetspeed-spring.xml:
- comment out entry "ApplicationServerManager" from bean with id 
"PortalServices"
- comment out bean with id 
"org.apache.jetspeed.tools.pamanager.servletcontainer.ApplicationServerManager"
- change constructor-arg index="4" value to "true" for bean with id 
"portletAppDeploymentListener"
  This will strip commons-logging and log4j jars from the war file on 
deployment as required on JBoss

copy jetspeed-ds.xml (or an adapted version like jetspeed-mysql-ds.xml) from 
the jetspeed-2 src folder portal/src/resource into $JBOSS/server/default/deploy.

copy your jdbc-driver (as configured in jetspeed-ds.xml) to 
$JBOSS/server/default/lib
If you use using the example hdsqldb setup of Jetspeed-2:
- remove $JBOSS/server/default/lib/hsqldb.jar
- *move* the hsqldb<-version>.jar from 
$JBOSS/server/default/default/jetspeed.war/WEB-INF/lib into 
$JBOSS/server/default/lib

add *the contents* of jboss-login-config.xml from the jetspeed-2 src folder 
portal/src/resource to $JBOSS/server/default/conf/login-config.xml
 

> Resolving all deployment classloader problems
> ---------------------------------------------
>
>          Key: JS2-210
>          URL: http://issues.apache.org/jira/browse/JS2-210
>      Project: Jetspeed 2
>         Type: Improvement
>   Components: Container, Deployment, Portlet Factory
>     Versions: 2.0-dev/cvs, 2.0-M2, 2.0-FINAL
>     Reporter: Ate Douma
>     Assignee: Ate Douma
>      Fix For: 2.0-dev/cvs, 2.0-M2

>
> The current implementation of handling deployment, redeployment and 
> undeployment of Portlet Applications (PAs) contains
> several workarounds to prevent file locking of jars and classes on Windows 
> and to allow layout portlets to run under
> the Jetspeed-2 context.
> After almost a day debugging and testing I found the real cause of all the 
> problems we try to fix: 
> our own URLClassLoaders we create to be able to access the portlet and 
> portlet resource bundles in the PA.
> As a test, I replaced our own URLClassLoaders with the contextClassLoader 
> from the PA, retrieved during the init
> of the JetspeedServletContainer. And viola, no more problem!
> I'm going to drastically refactor the whole deployment implementation to be 
> able to *only* use the PA contextClassLoaders.
> The autodeployment from the deploy folder will be changed to infuse the PA 
> war (if needed) and *move* it to the webapps
> folder so the autodeployment of the application server will handle the real 
> deployment.
> Thus: the undeployment from the deploy folder for PAs will be gone!
> Redeployment will still work as expected though.
> For undeployment, an new undeployment feature in the PAM Portlet will be 
> added.
> Additionally, other PA management features like upload/start/stop/reload/ 
> should be added soon too. We need a separate
> issue for that though.
> Decorators (and soon layouts too) will still be handled as is done right now 
> (they don't involve classloaders).
> For deployment of layout portlets I want to make the following changes:
> - must be deployed as jar, *not* as war
> - can *only* contain classes, no resources
> - resources required by a layout portlet must be deployed separately with a 
> decorators or layouts jar
> - will *not* be deployed as web app but the jar *will* be loaded with a 
> URLClassloader with the portal classloader
>   as parent: the portlets will be invoked through a JetspeedContainerServlet 
> from the portal itself.
> These changes will also fix the outstanding problem with running Jetspeed-2 
> under a different context!
> (see JS2-172 and JS2-182)
> I'm going to need several days to perform this refactoring so if anyone has 
> problems with this plan please do comment within the next few days!

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to