Runtime components : Service components : JCA SNA Connector : JCA SNA LU0 Connector : Concepts
  
Concepts
See also
How JCA LU0 Connector Works
Implementation
JCA SNA LU0 Connector
How JCA LU0 Connector Works
The application can perform outbound communications using CCI interface, and it can create MDB to handle inbound communications.
The following process describes what happens when an application uses CCI to send and receive messages:
1 The application requests a connection to the EIS through the JNDI name of the connector factory for the SNA JCA LU0 Connector. The factory creates the connection using the connection properties predefined in the J2C console page of WebSphere Application Server.
2 When the application has an established connection, the application performs an interaction verb to send and receive messages. The interaction verb has the following properties: verb types (send or receive), timeout, input record, and output record.
3 To perform the interaction, the SNA JCA LU0 Connector converts the input record or input message into string and then invokes the corresponding API of underlying EIS according to the interaction verb type.
4 The SNA JCA LU0 Connector returns the output record or message to the application.
5 The application continues with the interaction verb or closes the connection.
The following process describes what happens when an application uses MDB to handle inbound message asynchronously:
6 User creates a MDB that implements the interface of Resource Adapter's message type. The activation specification values and JNDI name of activation specification should also be specified while creating MDB.
7 When the MDB is deployed to the Application Server, the Application Server will look up the Resource Adapter by matching the message type and activationSpec JNDI name of the Resource Adapter and the MDB.
8 The activationSpec instance of MDB and a MessageEndpointFactory instance will be transferred to the Resource Adapter for validation and registration. After the MDB is activated, the MDB is ready to receive messages.
9 The MDB can receive two types of messages: one type is pure inbound message that originates from partner host, which is called unsolicited message; the other type is the outbound reply message from partner host after the application sends outbound message at first by using CCI, which is called solicited message.
10 For the unsolicited inbound message that comes from EIS, the resource adapter will create an endpoint by calling createEndPoint() method of MessageEndPointFactory instance passed by Application Server when MDB is activated. Then the Connector will determine whether to deliver the solicited message to the MDB. The JCA LU0 Connector will call onUnsolicitedMessage method of the endpoint to notify the MDB of the message arrival.
11 For the solicited outbound reply message, the JCA Connector will match the activation specification with the custom property of the connection factory. Then the JCA LU0 Connector will call onSolicitedMessage method of the endpoint to notify the MDB of message arrival.
12 When the Application Server stops or the MDB is undeployed, the Application Server will notify the resource adapter that the MDB is deactivated. Then the adapter will not deliver messages to the MDB.
See also
Concepts
Implementation
The following sections describe aspects of the SNA JCA LU0 Connector implementation.
See also
Common Client Interface implementation
Connection Management implementation
Transaction Management implementation
Security Management implementation
Message Inflow Contract implementation
Work Management implementation
Lifecycle Management Implementation
Concepts
Common Client Interface implementation
The following table lists the implementation classes used by the SNA JCA LU0 Connector to fulfill the CCI (Common Client Interface) contract:
CCI implementation for the SNA JCA LU0 Connector
 
Interface
Implementation class
javax.resource.cci.ConnectionFactory
com.ibm.connector.lu0.Lu0ConnectionFactory
javax.resource.cci.Connection
com.ibm.connector.lu0.Lu0Connection
javax.resource.cci.Interaction
com.ibm.connector.lu0.Lu0Interaction
javax.resource.cci.InteractionSpec
com.ibm.connector.lu0.Lu0InteractionSpec
javax.resource.cci.Record
com.ibm.connector.lu0.Lu0Record
See also
Implementation
Connection Management implementation
The SNA JCA LU0 Connector fulfils the Connection Management Contract using the following classes:
Connection management implementation of JCA LU0
 
Interface
Implementation class
javax.resource.cci.ConnectionFactory
com.ibm.connector.lu0.Lu0ConnectionFactory
javax.resource.cci.Connection
com.ibm.connector.lu0.Lu0Connection
javax.resource.spi.ManagedConnectionFactory
com.ibm.connector.lu0.Lu0ManagedConnectionFactory
javax.resource.spi.ManagedConnection
com.ibm.connector.lu0.Lu0ManagedConnection
javax.resource.spi.ManagedConnectionMetaData
com.ibm.connector.lu0.Lu0ManagedConnectionMetadata
javax.resource.spi.ConnectionRequestInfo
com.ibm.connector.lu0.Lu0ConnectionRequestInfo
The SNA JCA LU0 Connector provides the rules that determines when the particular connection can be reused and under which circumstances it should be used. For more information, see the JCA documentation.
See also
Implementation
Transaction Management implementation
The SNA JCA LU0 Connector does not support the Transaction Management Contract.
See also
Implementation
Security Management implementation
The SNA JCA LU0 Connector supports the Security Management Contract. It uses a container-managed signon in which the container determines the user name and password for establishing a connection to an EIS instance. The client provides the user ID and password as part of the request message.
See also
Implementation
Message Inflow Contract implementation
In the inbound communication model, the EIS initiates all communication to an application. The application can be composed of EJBs (session, entity and message-driven beans) and it can reside in an EJB container.
The figure below shows the process of the inbound communication.
Diagram showing the process of inbound communication.
The inbound communication is supported by Message Inflow contract of JCA1.5.
The table below lists the implementation classes used by SNA JCA LU0 Connector to fulfil the Message Inflow Contract:
Message Inflow Contract Implementation of JCA LU0 Connector
 
Interface
Implementation class
javax.resource.spi.ResourceAdapter
com.ibm.connector.lu0.Lu0ResourceAdapterImp
javax.resource.spi.work.Work
com.ibm.connector.lu0.Lu0Work
javax.resource.spi.ActivationSpec
com.ibm.connector.lu0.LU0ActivationSpec
com.ibm.connector.lu0.Lu0MessageListener
MDB implementation of application
com.ibm.connector.lu0. LU0XAResource
javax.transaction.xa.XAResource
See also
Implementation
Work Management implementation
Instead of creating Java thread directly as in JCA 1.0 LU0 Connector, the JCA 1.5 LU0 Connector makes use of the Work Management that the application supports. The Connector becomes more efficient and reliable by using work management feature.
See also
Implementation
Lifecycle Management Implementation
The Lifecycle Management Contract provides a way for an Application Server to manage the lifecycle of the resource adapter instance. The JCA 1.5 SNA connector does some initialization work such as loading the library when the Application Server starts up or when the resource adapter is deployed. The connector cleans and terminates the physical SNA connection when the Application Server shuts down or the resource adapter is undeployed.
See also
Implementation