This page can be a place holder for any AR ( Application router related discussions that we have. Meeting Minutes 17Oct 2007 Participants : Yvo, Per, Eltjo, Binod, Siva and Prasad We discussed the philosophy behind how the AR would be treated in SJSCAS
The AR would be packaged as a .jar file. It would be deployed using the asadmin command/autodeploy feature. Advantages of deployment :
- Can have different ARs for each cluster
- Synchronization taken care of
- Potential swapping of AR possible
- The AR jar file would be treated as a plain java application.The ArchiveDescriptor implementation would just return the Classloader used for deploying AR.
- Location of the AR classes in the AS directory structure : Given that we need the AR classes to be synchronized using the current synchronization framework of the AS, the AR classes would be located in
$
Unknown macro: {com.sun.aas.instanceRoot}
/applications/j2ee-module/<<AR-JAR-NAME>> , where $
= <AS-INSTALL-ROOT>/domains/<domain-name> OR <AS-INSTALL-ROOT>/nodeagents/<node-agent-name>/<instance-name>
- Loading of AR : The Application Dispatcher would need to "register" the AR with itself. hence during the "load" operation of the deployment process, either an instance of AR would be passed to the Application Dispatcher or the class name of the AR class would be passed to the Application Dispatcher.
- ClassLoader for AR : A custom classloader would need to be created for AR , whose parent in the AS Classloading chain would be the common classloader. Note that this class loader is relevant for the "loading" phase. The classpath for this classloader should have the location of the AR classes mentioned above.
- Annotation Processing : At this time we would not support any annotations in AR. If the AR classes wish to access any resources like JDBC resources they would need to do a lookup on a Context , in the same manner as a Java program.
- Hot Deployment of AR : We are still experimenting on this. Current plan of record is ; that in production systems, the Rolling Upgrade procedure for applications would apply for the AR too. ; in developer scenarios there may be a loss of session "in-flight", which shd be acceptable.
- AR Deployment is blocked by a bug in the Extension Module Deployment SPI. Prasad to fix and revert back to Yvo.
|