IntroductionIntegration complexity As you develop Web-based applications, you probably find that you need to integrate those applications with the resources and data available in at least one enterprise information system (EIS), such as an enterprise resource planning (ERP) system, a supply chain management (SCM) system, or a transaction processing monitor (TPM). Such integration is the essence of e-business strategy: we leverage and transform existing infrastructure, combining it with Web and other open technologies to support new business processes, such as business-to-business (B2B) transactions. Prior to the advent of the J2EE Connector Architecture, integrating a J2EE application and an EIS was complex and problematic, because no standard for such integration existed. Each EIS vendor supplied its own solution to the problem. An EIS vendor usually didn't support all J2EE application servers. All of this made it difficult to write truly portable applications that integrated with enterprise information systems; a custom effort was required to integrate each application server-EIS combination. JCA simplifies integration The J2EE Connector Architecture (JCA) resolves the problem of connecting a J2EE application server to an EIS. By complying with the JCA standard, an EIS vendor ensures that its EIS will integrate easily with any Java-based application server. Likewise, the application-server vendor needs only to ensure its product is enabled for JCA connectivity, rather than customizing its product for every EIS on the market. Any JCA-enabled application server can integrate with any JCA-compliant EIS. Introduction to the J2EE Connector Architecture Elements of JCA JCA is composed of three primary elements:
System contracts System contracts define the connection between the application server and the EIS. The EIS side of the system contract is implemented by a resource adapter -- a system-level software driver specific to the EIS. The application server and the resource adapter collaborate by means of the system contract to provide secure, robust, scalable access to the EIS. Three types of system contracts are defined:
Client API The second element of JCA is the client API. The API can be specific to the resource adapter or it can be the standard Common Client Interface (CCI) as defined by JCA. The CCI is meant to be used by vendors to provide integration tools and frameworks, making it easier for developers to access enterprise systems. It is recommended (but not mandated) that the resource adapter make use of the CCI. Resource adapter module The resource adapter module contains all of the elements necessary to provide EIS connectivity to applications. Specifically, the resource adapter module includes the following components:
Resource adapter module packaging Introduction to the J2EE Connector Architecture All of the resource adapter module's files are packaged into a resource adapter archive (RAR) file using the Java archive (JAR) file format. All Java classes and interfaces are packaged in a JAR file, which is then contained by the RAR file. The native files are packaged in the RAR file, also. The deployment descriptor is named ra.xml, and is located in the META-INF folder of the RAR file. |