Date post: | 30-Dec-2015 |
Category: |
Documents |
Upload: | andrea-douglas |
View: | 227 times |
Download: | 3 times |
Java-Based Middleware
• Categories– Database oriented
• The most mature element of Java-based integration. Includes the JDBC specification
– Interprocess• Remote Method Invocation (RMI). Analogous to RPC
without many of the problems associated with RPC
– Message Oriented• Java Message Service (JMS) is an application framework
that provides an API to allow message level connectivity between JMS compatible systems.
Java-Based Middleware
• Categories– Application Hosting
• Using an application server allows a Java app to serve as an entry point to centralized resources.
– Connectivity• Java Connector Architecture (JCA) provides a
standardized interface for integrating Java2 Enterprise Edition (J2EE) applications amongst Enterprise Information Systems (EIS)
Java-Based Middleware
• J2EE– J2EE provides XML support through the Java API for
XML Processing (JAXP). This gives the capability to verify, create, access and manipulate XML documents directly from within Java
– JAXP specifications include:• Java API for XML Messaging (JAXM) which allows
transmission and reception of SOAP messages• Java API for XML Registries (JAXR) provides a uniform
standard for interacting with XML registries such as UDDI or ebXML
• Java API for XML-based RPC (JAX-RPC) gives developers access to a Java based RPC library based on the SOAP specifications
Java-Based Middleware
• Transactional J2EE– Java transactions are supported through the used of
the Java Transaction API (JTA).– JTA enables high-level transaction processing in a
distributed environment
• Messaging J2EE– Java Messaging Service (JMS) is a growing
middleware standard that has attracted a wide variety of existing middleware vendors
Java-Based Middleware
• Distributed Application J2EE– RMI provides a limited capability to interact with other
distributed object middlewares such as CORBA– The RMI-IIOP extensions provide an addition to the
Java RMI that allows much greater interaction and integration with CORBA ORBs.
– RMI-IIOP allows developers to connect the two middleware standards together natively, with no transactional binding needing to be implemented
Integration Servers
• “Integration servers broker information between on or more target entities with greater ease than traditional middleware models”
• Services that are provided by integration servers include:– Transformation– Intelligent Routing– Rules Processing– Message warehousing– Flow Control– Respository services– Directory services– Management– APIs and adapters
Integration Servers
• Most middleware solutions that we’ve explored so far only deal with portions of the middleware problem.
• Functions such as routing, data format and flow control are not part of a typical middleware package
• Integration servers help this problem by providing a standardized set of services that may be applied across a number of differing middleware domains
Integration Servers
• Integration servers provide a number of differing communications models, including:– One-to-one– One-to-many– Many-to-many– Any-to-any
Integration Servers
• In evaluating the applicability of an integration server, we need to take the following steps:– Evaluate the systems to be integrated. APIs that are
available should be indentified– Use existing APIs to serve as entry points into existing
applications (preventing a rewrite)– Whenever possible, use an adapter to insulate both
the target application and the integration server
Integration Servers
• Let’s look at some integration server services more in depth:– Transformation Layer
• We need to provide a standardized data representation for all systems to be integrated. The functions here include pattern matching, parsing, etc.
– Schema Conversion• Database schema’s must also be compatible (data
federation). This layer is responsible for the conversion to/from a common schema
Integration Servers
– Data Conversion• In addition to changes to the schema, we might need to
make changes to the physical data structure as well.
– Intelligent Routing• Messages need to be routed to the server that is best
available to process them. Often, only the integration server itself can make that determination
– Rules Processing• Data constraints might require knowledge from separate
systems to determine the applicability of rulesets
Integration Servers
– Message Warehousing• It may become necessary to retrieve information for a
period of time. Warehousing provides a persistent storage location for that data
– Repository Services• Central location of information about source and target
applications (metadata, etc)
– User Interface• Common location for the serving of a GUI that allows
access to the interfaced systems
Integration Servers
– Directory Services• Allows integrated applications to intelligently locate any
data on the network. Examples include DNS, Netware, Active Directory, etc.
– Management• System management of the various applications that are
integrated. Current management tools include elements that utilize SNMP.
– Adapters• A common wrapper that allows easier integration than
rewriting an application from scratch.