Abstract. The deployment of J2EE systems in Grid environments remains a difficult task: the architecture of these applications are complex and the target environment is heterogeneous, open and dynamic. In this paper, we show how the component-based approach simplifies the design, the deployment and the reconfiguration of a J2EE system. We propose an extended architecture description language that allows specifying the deployment of enterprise systems in enterprise Grids, driven by resources and location constraints. With respect to these constraints we present a deployment process that instantiates propagatively the application, taking into account resources and hosts availability. Finally, we present an autonomic solution for recovery from failures.