1. A method for creating a user experience factory for developing one or more user interfaces for one or more Java 2 Platform, Enterprise Edition (J2EE) applications, the method comprising: a. identifying one or more user experience components for generating the one or more user interfaces; b. creating one or more user interface templates for generating the one or more user experience components, wherein the one or more user interface templates are stored in a repository; c. defining a user experience factory schema comprising one or more relationships between the one or more user experience components; and d. creating the user experience factory using the user experience factory schema and the one or more user interface templates.