Infrastructure for Automatic Dynamic Deployment of J2EE Applications in Distributed Environments

Recent studies have shown the potential of using component frameworks for building flexible adaptable applications for deployment in distributed environments. However this approach is hindered by the complexity of deploying component-based applications, which usually involve a great deal of configuration of both the application components and system services they depend on. In this paper we propose an infrastructure for automatic dynamic deployment of J2EE applications, that specifically addresses the problems of (1) inter-component connectivity specification and its effects on component configuration and deployment; and (2) application component dependencies on application server services, their configuration and deployment. The proposed infrastructure provides simple yet expressive abstractions for potential application adaptation through dynamic deployment and undeployment of components. We report on our experience with implementing the infrastructure as a part of the JBoss J2EE application server and testing it on several sample J2EE applications.

[1]  George Candea,et al.  JAGR: an autonomous self-recovering application server , 2003, 2003 Autonomic Computing Workshop.

[2]  Francisco Reverbel,et al.  The JBoss Extensible Server , 2003, Middleware.

[3]  Vijay Karamcheti,et al.  Efficiently distributing component-based applications across wide-area environments , 2003, 23rd International Conference on Distributed Computing Systems, 2003. Proceedings..

[4]  Jonathan E. Cook,et al.  Highly reliable upgrading of components , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[5]  D. B. Davis,et al.  Sun Microsystems Inc. , 1993 .

[6]  Thaís Vasconcelos Batista,et al.  Dynamic reconfiguration of component-based applications , 2000, 2000 Proceedings International Symposium on Software Engineering for Parallel and Distributed Systems.

[7]  Eric A. Brewer,et al.  Pinpoint: problem determination in large, dynamic Internet services , 2002, Proceedings International Conference on Dependable Systems and Networks.

[8]  Jeff Magee,et al.  Composing distributed objects in CORBA , 1997, Proceedings of the Third International Symposium on Autonomous Decentralized Systems. ISADS 97.

[9]  William Donnelly Component Reuse , 1999, IS&N.

[10]  日本IBMシステムズエンジニアリング株式会社 WebSphere Application Server 開発者ガイド , 2001 .

[11]  Dennis Heimbigner,et al.  Reconfiguration in the Enterprise JavaBean Component Model , 2002, Component Deployment.

[12]  Vijay Karamcheti,et al.  Constrained component deployment in wide-area networks using AI planning techniques , 2003, Proceedings International Parallel and Distributed Processing Symposium.

[13]  Daniel Hagimont,et al.  An Infrastructure for CORBA Component Replication , 2002, Component Deployment.

[14]  Fabio Kon,et al.  Dependence management in component-based distributed systems , 2000, IEEE Concurr..

[15]  姜志军,et al.  对Java 2 Enterprise Edition主要设计模式的探讨 , 2006 .

[16]  Dennis Heimbigner,et al.  Deployment and dynamic reconfiguration planning for distributed software systems , 2007, Software Quality Journal.

[17]  Clemens Szyperski,et al.  Component software , 1997 .