Introduction The number of global 2000 enterprises using java technology has been on the increase, with more professional developers, open-source community and big industries adopting java and its enterprise component framework, java 2 Enterprise Edition (J2EE). This technology has “emerged as leading component architecture for applications requiring agility, scalability and interoperability”. The technology has contributed a lot to the intelligent Enterprise Architecture, therefore, facilitating Enterprise Web Services (Sierra & Bates, 2008). Development and Design of J2EE The need for agile, flexible and scalable techniques in the design and implementation of business applications is attributed to the rise in technology in business strategy (Sharma, Stearns, & Ng, 2002). Two significant components that have led to the fast adoption of distributed component architectures and their associated tools and platforms are the emergence of the Web and the rising awareness of object and component development models. The foundation and standards for invoking objects between different applications residing in the same server, varying servers or even varying organizations is made possible by use of distributed component architectures (Sharma, Stearns, & Ng, 2002). According to Brevoort (2005) “the J2EE platform is essentially a distributed Java application server environment that provides a set of Java extension APIs to build applications and a runtime infrastructure for hosting applications”. This implies that the run-time infrastructure of J2EE specifies the roles and interfaces for applications. In doing this, J2EE allows application developers to focus on application logic by unifying access to enterprise services including transaction processing, database access and messaging via its enterprise service API’s. J2EE application programs are able to connect to external services and resources such as databases via interfaces. Some of these resources include: JDBC, a connectivity API that allows transactional, querying, retrieval and manipulation of data; JNDI, which allows access to directory services necessary when looking up distributed components; JMS, which allows asynchronous sending and receiving of messages; and Java Mail, which works in a manner similar to JMS (Brevoort, Steinley, & Spinnenweber, 2005). The J2EE Component Model “J2EE defines a standard framework for developing a variety of enterprise applications that are available, secure and scalable” (Brevoort, Steinley, & Spinnenweber, 2005). According to Brevoort (2005), the “J2EE platform allows for a unified approach for enterprise-wide, distributed applications via a component-based application model”. These benefits are attainable by defining a standard architecture (Brevoort, Steinley, & Spinnenweber, 2005). Specifications and compliance tests help to ensure portability of applications across the wide variety of enterprise systems capable of supporting J2EE. “The Java Community Process (JCP) is served with the responsibility of creating and maintaining afore mentioned specifications by developing java technology, guiding the development and approval of Java technical specifications” (Brevoort, Steinley, & Spinnenweber, 2005). There are many tec