WebSphere®AdaptersWebSphere Adapter Toolkit User GuideVersion 6 Release 2Version 6 Release 2
WebSphere adapters utilize a format-independent data model for representing dataobjects. In a WebSphere Process Server or WebSphere Enterprise Service
Callback event processing for event delivery with XA transactionTo provide data integrity and to make sure events are not delivered more thanonce, whi
When the adapter signals that it has completed delivery, the transaction managerwill then call ″end″, ″prepare″, and ″commit″ to complete the requirem
Callback event processing for event recoveryWhen there is a failure in the event processing as part of system recovery, theadapter is able to recover
When the container starts, it calls the getXAResources() method on the adapter toget all the associated XA resources. The adapter then instantiates th
Application sign-onThe Adapter Foundation Classes can use either container-managed orcomponent-managed authentication or sign-on.The process of connec
7. The ConnectionManager may call getConnection(Subject,ConnectionRequestInfo) on a ManagedConnection where the passedConnectionRequestInfo does not m
public Object createConnectionFactory(ConnectionManager connMgr) throwsResourceException{return new TwineBallConnectionFactory(connMgr, this);}2. Mana
Best practicesv Each ManagedConnection instance should encapsulate at most one connection tothe EIS.v Since there may be more than one Connection inst
public Interaction createInteraction() throws ResourceException{return new TwineBallInteraction(this);}Note: If you want to provide your own implement
this.connection.getResourceAdapter();ObjectNaming objectNaming = new ObjectNaming(resourceAdapter);factory = new TwineBallCommandFactory(objectNaming)
processing performed by each component (and subcomponent) in the model isdescribed in sections that follow the illustration.The component model allows
properties should not change the configuration of the EIS.javax.resource.cci.ConnectionMetadata:A javax.resource.cci.ConnectionMetadata instance provi
3. Override method WBIManagedConnection.getLocalTransaction() and, if XAsupport is provided, method WBIManagedConnection.getXAResource().Wrap either o
Adapters are responsible for creating, updating, retrieving, and deleting (CRUD)records in the EIS system based on the structure described by the inco
Consider the following scenario: Child B1 is in the EIS, but is not in the incomingstructure. Child B1, then, must be deleted. The Command Manager wil
Command Manager DeleteDelta objectsDelta processing is only relevant for service data objects (SDO).The Command Manager functions in a similar way whe
Suppose, as in the example below, that child B1 is created and is part of the changesummary. The resulting command structure will contain a Create com
Command Manager CreateWhen it processes this structure, the interpreter will execute the No-op commandsas well as the Create command. In general, the
Command Manager simplifies before and after comparisonsAs shown in the upper portion of the figure, the input to the Command Manageris a before image
The Command Manager processes delta structures in a manner analogous to thatof after-image data. The difference is that, for delta objects, comparativ
You will need to implement the following:1. Command implementations for each command type (″Retrieve″, ″RetrieveAll″,″Create″, ″Update″, ″Delete″, and
The connectivity subcomponent interacts with the target enterprise informationsystem’s specific libraries and functionality. The subcomponent is expos
if (functionName.equals(NodeLevelOperations.CREATE_NODE)) {command = new TwineBallCreateCommand();} else if (functionName.equals(NodeLevelOperations.D
Data and metadataAdapter Foundation Classes (AFC) implement DESPI APIs and support two dataformats, service data objects (SDO) and JavaBeans.The data
Table 2. Mapping between built-in XSD schema and JavaBean properties (continued)Header HeaderanySimpleType StringAny StringThere are cases in which a
The notion of whether or not a property is set is critical to processing null valuesor values that have not been set in the adapter. If a property has
As defined in the sapBAPIBusinessObjectTypeMetadata schema ″Operation″ is ann-cardinality complex type. The ″MethodName″ element of the operation type
objectAnnotationsMapObjectName WBI_CUSTOMER_CIOperation operationsListcreateOperationsMapName CreateMethodName MethodNameListoperationListupdateOperat
These interfaces may contain more helper methods than are listed here, please seethe Javadoc for the additional helpers.Factory classesClass TypeFacto
Property getProperty(String propertyName)Returns the property object for this property name.Map getAnnotations(String source)Returns the object-level
boolean isContainment()Returns whether or not the property contains a Type(complex object).boolean isMany()Returns whether or not the property contain
Support for GeneratedRecords artifact type: WebSphere adapters may supportJavaBeanRecord data representation along with SDO 1.0 and SDO 2.0 data objec
the appropriate programming model. It is responsible for mapping the specificinvocation to the invocation of the connector component through the JCA c
The enterprise metadata discovery component is analogous to the Object DiscoveryAgent of WebSphere Business Integration Adapters. In addition to gener
Business Object StructuresThese are the business objects used by JCA adapters. They describe the structureand content of arguments to functions on the
Service metadataEnterprise metadata discovery architectureThe enterprise metadata discovery tooling includes runtime, discovery, and servicegeneration
These interfaces extend the CCI interfaces defined in the JCA specification tosupport invocation of services discovered with enterprise metadata disco
for multiple back-end EIS assets. IBM WebSphere recommends a singleadapterType for each enterprise metadata discovery implementation.The following inf
copy matching properties from metadata connection to runtime connection. Formore information, see the WBIOutboundConnectionTypeImpl in the Javadocs.Th
MetadataConnectionThe MetadataConnection object represents the connection to EIS or EIS repository.This interface is implemented by the Adapter Founda
In addition to object selection, MetadataSelection also holds properties that areapplicable for the selected objects. Such properties include the foll
the import. The Adapter Foundation Classes provide an implementation forServiceDescription as abstract classes. Discovery service implementations shou
You must provide EIS connection descriptions for the enterprise metadatadiscovery service. Adapter Foundation Classes contain interface implementation
Version 1.1 of Enterprise Metadata Discovery includes enhancements forconfigurable data handlers, function selectors, and data bindings, and a way tob
Outbound Function DescriptionThe following information has to be filled in by the discovery serviceimplementations:v Name - e.g. createCustomer, apply
Note: To limit confusion, custom operation names should not conflict with thestandard operation names mentioned above.Note: In cases where the mapping
v Name – For example, VENDORIDv Type – For example, stringv Cardinality – 1 or Nv Required – Booleanv ObjectTypeName – For cases where an attribute ma
BootStrap:WebSphere Integration Developer performs a bootstrap step to identify a resourceadapter that has been enabled for enterprise metadata discov
v PropertyGroup – A collection of properties including single and multi types andPropertyGroup itself. For example, OutboundConnectionConfiguration al
A propertyChange() method should be implemented if a property needs to listenfor changes on some other property. Check the TwineBall sample forService
public TwineBallMetadataDiscovery() throws MetadataException {super("com.ibm.j2ca.sample.twineball.emd");}The WBIAdapterTypeImpl constructor
discovery and the one that used for run time. The copy is based on names. Forexample, if a property name Username exists in the configuration used for
public TwineBallAdapterType()throws MetadataException{super(Constants.RESOURCE_ADAPTER_BEAN_NAME, 2, 1);setId(Constants.ADAPTER_NAME);setDisplayName(C
the managed connection factory types that are supported by the adapter. Eachmanaged connection factory maps to an instance of outbound connection type
– The New Connector Project Wizard - Prompts you to specify informationabout the resource adapter you wish to develop, and then generates code anda de
setDescription(WBIMetadataDiscoveryImpl.getPropertyDescription("ConnectionType"));setId("TwineBall");setDisplayName(WBIMetadataDis
TwineBallConfigurationProperties.getTwineBallConfigurationProperties();TwineBallResourceAdapter ra =new TwineBallResourceAdapter();WBIPropertyGroupImp
This class is similar to WBIOutboundConnectionConfigurationImpl except insteadof ManagedConnectionFactory, WBIInboundConnectionConfigurationImpl handl
ConstructorThe constructor takes MetadataConnection as an argument. The constructor canalso return properties from MetadataConnection that were used t
(Constants.SERVICETYPE));propertyGroup.addProperty(typeProp);WBISingleValuedPropertyImpl nameSpaceProp =new WBISingleValuedPropertyImpl(Constants.NAME
ArrayList objects = getTopLevelObjects();response.setObjects(objects);return response;}WBIMetadataObjectImpl samples:WBIMetadataObjectImpl represents
createSelectionPropertiesThe createSelectionProperties() method returns a property group that is used tocapture inputs from users. These inputs includ
The enterprise metadata discovery service uses WBIMetadataEditImpl to acquireconnectionTypes, which contains editable properties forResourceAdapter,Ma
dataDesc.prepareChildSchemaFiles();WBIMetadataDiscoveryImpl.getLogUtils().trace(Level.FINER,CLASSNAME,"preparingChildSchemaFiles","Prep
bometadata.setNameSpace(namespace);bometadata.setObjectNameSpace(Constants.BUS_OBJ_APPINFO_ASI_TYPE_TAG);bometadata.setASI(Constants.ASI_OBJECTNAME,th
v Generate a resource adapter deployment descriptorYou can view and edit this deployment descriptor using the Resource AdapterDeployment Descriptor Ed
WBIMetadataDiscoveryImpl.getLogUtils().traceMethodExit(CLASSNAME, "getImportNameSpaces");return list;}getNameSpacesThe getNameSpaces() metho
getChildListThe getChildList() method returns the Iterator for the child objects of theDataDescription.public Iterator getChildList() throws MetadataE
FunctionDescription[] funcArray =new FunctionDescription[functionDescriptions.size()];functionDescriptions.toArray(funcArray);super.setFunctionDescrip
dataDescription.setMetadataObject(metadataObj);dataDescription.populateSchemaDefinitions();dataDescription.setRelativePath(location);dataDescription.s
Creating services that use technology-style adapters relies on being able toimplement the interfaces in the commonj.connector.metadata.build.* package
processed. A custom function selector can use the information in theInboundInteractionSpec to generate a native function.For a custom adapter, you can
To access the binding configuration, docontext.get(BindingContext.BINDING_CONFIGURATION)To access the expected type, do context.get (BindingContext.EX
v WBIMetadataBuildv WBIFunctionBuilderv WBIMetadataType (optional)When you extend WBIMetadataBuild, you will need to implement the followingmethods:v
Extend WBIMetadataType if your adapter needs a simple wrapper object around apayload object, similar to the IBM WebSphere Adapter for Flat Files and t
Initialize input methodThis method resolves the type of the metadata if it’s a JavaBean or SDO type andinitializes the metadata interfaces appropriate
IBM WebSphere Adapter Toolkit tasksThe tasks range from installing the toolkit, samples, and Adapter FoundationClasses (using the Eclipse Update Manag
Set managed connection methodThis method passes the ManagedConnection handle to the record implementation,allowing the record to get access to the phy
the retriveAll operation could return ″N″ records from the backend application,for each call to the getNext() method the implementation should fill in
The method should first extract the value from backend object representationdefined through Xpath and use OutputCursor and OutputAccessor interfaces t
For operations where getNext() should be invoked multiple times like RetrieveAll,the databinding should call getNext() multiple times add the built Bu
v When WBIStructuredRecord is initialized with data that contains Bidiannotations, Cursors and accessors that are associated with that structuredrecor
How to support fault handling:Understand the following concepts for implementing fault handling into youradapter.Before you define faults, review adap
//Added for Faults funcDesc.setName(operation.toLowerCase() + queryDataDesc.getBOName());getLogUtils().trace(LogLevel.FINEST,CLASSNAME, "getXMLLi
public class JDEXMLListFaultDataDescription implementsFaultDataDescription {public JDEXMLListFaultDataDescription() {super();// TODO Auto-generated co
fdesc2.setGenericDataBindingClassName("com.ibm.j2ca.extension.emd.runtime.WBIFaultDataBindingImpl");fdesc2.setFaultName(FaultBOUtil.MATCHES_
Table 4. Fault name and configured fault binding (continued)Fault Name Configured Fault BindingINVALID_REQUEST com.ibm.j2ca.extension.emd.runtime.WBIF
Operating system VersionsWindows 2000 Windows 2000 Professional (SP4)Windows 2000 Server (SP4)Windows 2000 Advanced Server (SP 4)Windows XP Windows XP
You can use the FaultBOUtil to define the fault business object, as long as eitherno attributes or only simple attributes are added. This should amoun
– They provide information on the state of the adapter for use by monitortooling– Represented as common base event data at run time, event messages ca
Writing a trace messageYou use the trace method of the LogUtils class to generate a trace message. Thismethod has two signatures. One of them is infor
"getRecordForEvent()", "test");return null;}}Example of trace message for the outbound scenario with confidential tracingproperty
Tracing assists developers and troubleshooters. Due to the significant performancecost incurred by tracing, however, many customers disable it in prod
Message typesThere are two message types for adapters, ADAPTER_RBUNDLE. The BASE_RBUNDLE isreserved for the Adapter Foundation Classes. The message ty
translated text. Values that are language-independent, such as key values or objectnames, are appropriate as log message parameters.Similarly to trace
Example of log message for the inbound scenario with confidential tracingproperty enabledpublic javax.resource.cci.Record getRecordForEvent(com.ibm.j2
public interface EventSourceContext{/*** Returns an event source for a monitored element.* @param elementKind an artifact kind that can be monitored e
* The client of an event point needs to know the payload of the fired events.*/public interface EventPoint{/***return the name of the event point*/Str
This documentation describes how to run the Twine Ball sample only. However,you can apply the instructions for running and testing the Twine Ball samp
<?xml version="1.0" encoding="UTF-8"?><EventNaturesSpec name="EventNatures" targetNamespace="http://www.ib
targetNamespace="http://www.ibm.com/xmlns/prod/websphere/scdl/eis/6.0.0:JCAAdapter"xmlns:er="http://www.ibm.com/xmlns/prod/websphere/re
Purpose1. Monitorable Element Schema (.mes) file changesDefines the element type within an adapter where monitoring can be attached.The element type i
d. If eventPoint is enabled, then fire event for Entry, Exit and Failure isinvoked.Entry event is fired in the beginning of the method call, exit even
v Is a transaction (and the application) hung, or are transactions failing?v What is the response time?v Are service level commitments being met?v Who
statistics and data for each ManagedConnection, which can be used to assess andtroubleshoot performance related problems.In order for resource adapter
FFDC processing overviewInstead of explicitly instrumenting catch blocks by calling FFDC directly, eithermanually or by using a tool, you can write a
If you use the FFDCSupport aspect, you can ensure a consistent FFDC policy foryour application by adding declare warning or error advice to your aspec
When using FFDCSupport aspect you can control the data gathered. Two templatemethods getSourceId and getProbeId are provided to you for this purpose.
Exception messagesException messages, like trace messages, convey information about problems. Thedifference is that exception messages are tailored mo
This launches the Samples.c. From the Samples navigation pane, select Technology samples and expandJava and WebSphere Adapters so that the Twine Ball
To test the enterprise metadata discovery (EMD) implementation for the developedresource adapter, complete the following steps:1. From the IBM WebSphe
JUnit: an open source framework for unit testingJUnit is becoming the standard tool for unit testing in Java developmentenvironments. JUnit allows you
Your adapter may or may not be dependant on ″live″ data inside the EIS. If so,you must either return the data to a known state after every test, or cr
setUp()The setUp() method for inbound is very similar to that for outbound. You may,however, not need an outbound connection through the adapter. Acco
For information on testing the adapter in managed mode in WebSphereApplication Server, see Validating code with Rational Application Developer /Websph
Test module configuration3. Select the testing mode and click Finish to start the test. On the DeploymentLocation screen, select a WebSphere Process S
Adding a value to the DatapoolThis adds the data to Datapool.When you want to use this input data again, select Use Value from Pool.Using an execution
After you have created and exported an adapter EAR file with the service type setto Inbound, you can test inbound functionality.1. Edit your module us
Selecting the Java packageg. Save the module.2. Publish the application to WebSphere Process Server.3. Open the administration console for the WebSphe
Validating code with Rational Application Developer andWebSphere Application ServerTo test the adapter in the Websphere Application Server environment
c. Optional: Deselect the Add project to an EAR check box.4. Click Finish.A dialog prompts you to open the J2EE perspective. Click Yes to finish thepr
4. In the Resource Adapter deployment panel, choose how to deploy the adapter.You can deploy the adapter with the EAR or you can deploy the adapter as
7. Start UTC using the Run universal test client option.WebSphere Adapter development overview 205
8. Once the UTC comes up, use the JNDI explorer to find your EJB. Look for yoursession EJB under EJB Beans.Now, you can test your adapter via the EJB
Note: External service discovery is equivalent to enterprise metadata discovery.f. Select the appropriate external service.g. Specify the connection p
ReferenceTerminologyThe terminology presented are of terms that are used frequently in thedocumentation.Adapter foundation classes (AFC)Sometimes refe
EclipseAn open source infrastructure for building tools such as an IntegratedDevelopment Environment (IDE). The toolkit’s wizard and editor are Eclips
OutboundOutbound is a description of the direction in which data and messages passfrom a J2EE client application to the EIS. Adapters support both inb
NoticesThis information was developed for products and services offered in the U.S.A.IBM may not offer the products, services, or features discussed i
Licensees of this program who wish to have information about it for the purposeof enabling: (i) the exchange of information between independently crea
this code are derived from IBM Corp. Sample Programs. (c) Copyright IBM Corp._enter the year or years_. All rights reserved.If you are viewing this in
4. Click Next to launch the New External Service window.5. From the New External Service window, make sure that Unlisted Adapter isselected and click
214 WebSphere Adapters: WebSphere Adapter Toolkit User Guide
IndexSpecial characters.WBIOutboundServiceDescriptionImpl 39(CCI), Common Client Interface 4(EAR) project, Enterprise ApplicationArchive 31(EAR), ente
Ggeneration options 35Hhardware requirements 12Iimplementation overview 68Inboundcallback event notification 90, 91, 92,94callback event sender 91call
Vverbsusagebusiness graph 71WWBIActivationSpec 37WBIAdapterTypeImpl 39, 141WBIConnection 35, 102WBIConnectionFactory 35, 101WBIConnectionRequestInfo 1
218 WebSphere Adapters: WebSphere Adapter Toolkit User Guide
Printed in USA
7. From the Processing Direction window, select Outbound and click Next.8. From the Discovery Configuration window, click Next. No connectionpropertie
10. From the Configure Composite Properties window, select Next.11. From the Service Generation and Deployment Configuration window, deselectSpecify a
12. From the Service Location Properties window, click New. This launches theNew Integration Project window.13. From the New Integration Project windo
15. Click Finish from the Service Location Properties window to add theoutbound interface to the module.16. You are prompted on whether you want to up
4. Click Next to launch the New External Service window.5. From the New External Service window, make sure that Unlisted Adapter isselected and click
7. From the Processing Direction window, select Inbound and click Next.8. From the Discovery Configuration window, click Next. No connectionproperties
10. From the Configure Composite Properties window select Next.11. From the Service Generation and Deployment Configuration window, deselectSpecify a
WebSphere®AdaptersWebSphere Adapter Toolkit User GuideVersion 6 Release 2Version 6 Release 2
12. From the Service Location Properties window, click Finish to add the inboundinterface to the module.13. You are prompted on whether you want to up
a. In the viewing pane of the Assembly diagram, right click and select Add →Java to add a Java component to the diagram2. Add a wire from the inbound
4. Run the administrative console and verify the module is installed and running.5. Test the module by performing the following steps:a. Change to the
6. In Java Creation and Deployment Configuration, make the followingselections:v Select create new project Name and enter a name for the project, fore
6. On left side select EJBSessionBean1 and click CustomercreateCustomer(Customer) Enter input customer parametersTroubleshooting the samplesYou may ne
Launching the New Connector Project wizardYou launch the wizard from IBM WebSphere Integration Developer.Make sure you have met all of the installatio
Select a wizard dialog5. Start the wizard.Expand theJava EE folder, choose Connector Project, and click Next. This startsthe New Connector Project wiz
Specify project propertiesYou name your connector project, optionally adding it to an Enterprise Applicationproject. You also specify the configuratio
Specify project facetsAs part of the process of creating a project, you specify project facets. A project facetrepresents a unit of functionality in t
2. Click Next to advance to the Resource adapter properties page.Now you are ready to set the properties for the resource adapter.Specify resource ada
NoteBefore using this information and the product it supports, read the information in “Notices” on page 211.December 2008This edition applies to vers
1. In Adapter Name, type the name of the adapter.2. In Adapter ShortName, type a one- to four-character short name for theadapter. The short name is u
For information on the characteristics of an IBM WebSphere Resource Adapter anda J2C Resource Adapter, see Introduction to JCA.Generation Options dial
You can select the following properties when generating outbound adapter classes:v Local transaction supportGenerating outbound adapter classes with l
/*** Does the EIS support XA transaction?* Get the XAResource from your EIS and return the wrapper.** @return new instance of WBIXAResourceWrapper* @s
When you choose the connection pooling component property the wizard willcreate the ActivationSpecWithXid class that extendsWBIActivationSpecForPoolin
com.ibm.j2ca.extension.databinding.WBIDataBindingGeneratorFor information on how to generate data binding classes, see Generating DataBinding Classes.
v StringCaseChangerThis is a utility that you can use format the business object or attribute nameproperly.For information on how to generate Enterpri
Generating outbound local transaction support methods:With local transaction support, the transaction is managed and performed by theEIS. LocalTransac
Generating outbound XA transaction support methods:With XA transaction support, the transaction spans multiple heterogeneoussystems. It uses global or
Review the section on command pattern classes in Generating an IBM WebSphereResource Adapter.The command pattern classes allow you to break down a hie
ContentsWebSphere Adapter Toolkit ...1IBM WebSphere Adapter Toolkit technologyoverviews ...2IBM WebSphere Adapters ...2Architectu
2. Review the available component property options associated with inboundadapter classes.Each of the component property options are described in the
2. Click Finish.Now, you can generate inbound event polling support.Generating inbound event polling support:Event polling refers to an adapter’s capa
2. When you are finished choosing generation options, click Finish.Now, you can generate inbound callback event classes.Generating inbound callback ev
2. When you are finished choosing generation options, click Finish.Now you can generate enterprise metadata discovery classes.Generating enterprise me
2. When you are finished choosing generation options, click Finish.Generate data binding classes.Generating data binding classesYou can generate data
2. When you are finished choosing generation options, click Finish.Learn how to generate a JCA resource adapter.Generating a JCA resource adapterYou u
v ManagedConnectionFactory implementsjavax.resource.spi.ResourceAdapterAssociation,javax.ValidatingManagedConnectionFactory, ManagedConnectionFactoryv
v EditableType implements commonj.connector.discoveryEditableTypev MetadataDiscovery implementscommonj.connector.discovery.MetadataDiscoveryv Metadata
implements javax.resource.runtime.SingleTypedProperty andjavax.resource.runtime.PropertyDescriptorv SingleValuedProperty implements javax.resource.run
2. When you are finished choosing generation options, click Finish.Generate inbound JCA adapter classes.Generating inbound JCA adapter classesThe inbo
iv WebSphere Adapters: WebSphere Adapter Toolkit User Guide
2. When you are finished choosing generation options, click Finish.Generate JCA enterprise metadata discovery classes.Generating JCA enterprise metada
2. When you are finished choosing generation options, click Finish.Generated code and deployment descriptorThe generated artifacts reflect the adapter
Using the Resource Adapter Deployment Descriptor editorThe Resource Adapter Deployment Descriptor editor provides an easy andconvenient way to configu
Deployment descriptor Overview paneAlternatively, you can view the deployment descriptor in the editor byhighlighting the file in the Project Explorer
Using the Overview paneThe Overview pane provides access to general information about your resourceadapter. You can display it at any time by clicking
Add component dialogThe Icons section of the overview pane allows you to associate icons with theresource adapter. You can specify a large or small ic
Resource adapter paneThe General Information section allows you to specify deployment descriptorvalues for the entire resource adapter. This section d
Add Config property dialogWhen you add, modify, or delete user-defined properties in this section, the editorcreates (or removes) the corresponding Ja
The sections of the Outbound Adapter pane are described below.Outbound resource adapter paneThe General Information section allows you to specify depl
Add Connection Definition dialogA Connection Definition requires the following information:v ConnectionFactory Interfacev ConnecitonFactory Implementa
WebSphere Adapter ToolkitThe IBM®WebSphere®Adapter Toolkit provides the development tools, librariesand sample code to assist you in creating JCA reso
Add Config property dialogWhen you add, modify, or delete user-defined properties in this section, the editorcreates (or removes) the corresponding Ja
class. Clicking the Add button under the list of Message Listeners on the left sideof the editor displays the following dialog box.Add Message Listene
Add Required Config Property dialogWhen you add, modify, or delete user-defined properties in this section, the editorcreates (or removes) the corresp
Generated bean propertiesThe editor maps resource adapter properties to class code. When you modify theresource adapter, the editor performs automatic
You can now view or modify the raw ra.xml file using the default editor providedby WebSphere Integration Developer. When you use this editor to save t
b. Identify configuration properties suitable for use by a client for a specificoutbound connection instance (for example, username, password, languag
v A full, working implementation, as opposed to the CCI Record model thatsimply defines interfaces that must be implemented by the adapter developer.v
changes. For outbound requests, the adapter must interpret the change summary,making all applicable changes to the data. For example, if an ORDER_LINE
Convert business object names from EIS-assigned formats to a camel case format(remove separators such as spaces or underscores and capitalize first le
Outbound Operation Signatures NotesapplyChanges<BOType>create<BOType>update<BOType>delete<BOType>These operations can handle d
The development process using the IBM WebSphere Adapter Toolkit includes thefollowing as shown in the illustration:1. Run the New JCA Resource Adapter
v Adapters should follow strict conventions in processing business objects. Thisincludes failing if an entity is marked as updated in the input busine
2. If the EIS does not generate its own primary key (or keys), insert the keyvalues from the input business object into the appropriate key column (or
Operation return valueNote: When writing the output values to the output cursor, be sure to include anygenerated keys or other side effects.Error hand
The InvalidRequestException exception is thrown if input to the operation is notsupported.The EISSystemException exception is thrown if the EIS report
CCI clients of resource adapters that support batch results must be capable ofrecognizing a top-level container and iterating through the child object
Note: The RetrieveAll operation always returns a result set regardless of howmany (if any) matches are found.Processing overviewRetrieveAll processing
EIS applications. Depending on the underlying EIS, the business events an adaptergenerates may span the set of changes that have occurred to a given e
Event Store Requirements1. Event data must be persistent. Once detected in the event store, an eventshould remain available there until deleted by the
During recovery, WebSphere Application Server calls the resource adapter, queriesit for XAResources, and then performs transaction recovery as follows
generate a timestamp to identify an event, producing an identifier such asMyAdapterName_06139833001005.Object KeyEach event should contain enough key
Inbound event notification complements outbound request processing, enablingadapters to provide bidirectional communication between business processes
StatusThe event status is used to track the state of an event. It allows the FoundationClasses to distinguish among events that are new from those in
Field DescriptioneventType Corresponds to the Business Object Namefield of the event recordtimeStamp Corresponds to the Timestamp field of theevent re
5. Set the name of the WebSphere business object complexType that correspondsto this application entity6. Set the event status to New.Implementing eve
Method DescriptionArrayList getEvents(int quantity, inteventStatus, String[] typeFilter)This method enables the adapter todetermine if there are any n
EventStore transaction control methodsMethod Descriptionboolean isTransactional() Is the event store transactional? If so, thismethod should return tr
Function selector:Function selectors map resource adapter events to corresponding SCA exportfunction names.The WebSphere Adapter component that expose
When you enable inbound callback event notification, business processes arealerted to changes in, or new information about, an EIS. The phrase callbac
Using the IBM WebSphere adapter foundation classes forinbound callback event processingThe adapter foundation classes can automatically track endpoint
The sendWithReturn methods invoke onMessage on the InboundListener. Thismethod delivers the Record it received from the listener thread. Here the diff
public EndpointPair(MessageEndpointFactory mef, ActivationSpec activationSpec) {this.mef = mef;this.activationSpec = activationSpec;}public boolean eq
Commenti su questo manuale