Skip Navigation Links | |
Exit Print View | |
![]() |
Developing OTDs for Oracle Java CAPS Application Adapters Java CAPS Documentation |
Developing OTDs for Application Adapters
SAP JCo and SAP IDoc Class Library Installation
To Download the SAP Java IDoc Class Library
To Create IDoc OTDs Directly From SAP
To Create IDOC OTDs From a Description File
Exporting the IDOC File from SAP
To Download the IDoc Description File From SAP
Saving the IDoc Description File (After 4.6)
To Save the IDoc Description File From SAP
Configuring Your System Before Creating the OTD
Configuring NetBeans to Work with Siebel
Installing seebeyond.sif for Siebel 7.5.x
Installing SiebelMessage XSD Generation Process.xml for Siebel 7.7 and 7.8.x
Encoding Behavior for Redefinitions
enableUnmarshalValidation(boolean enable) Method
marshal(String charset) Method
marshal(OtdOutputStream out) Method
marshal(OtdOutputStream out, String charset) Method
unmarshal(OtdInputStream in) Method
unmarshal(OtdInputStream in, String charset) Method
unmarshal(byte[] in, String charset) Method
unmarshalFromString(String in) Method
useEncoding(String enc) Method
Creating an Oracle Applications OTD
To Create an Oracle Applications OTD
Exposed Oracle Applications OTD Nodes
SWIFT Alliance Gateway Adapter OTD Features
Generating DTDs from PeopleTools 8.13
Generating and Publishing an XML Test Message
To generate a PeopleSoft XML message
Extracting and Viewing the XML Test Message
Generating a DTD for the XML File
The SAP BAPI wizard is used to create BAPI and RFC OTDs. BAPI and RFC OTDs can be used in Java Collaborations and BPM Business Processes, and NetBeans EJBs to communicate with SAP.
SAP BAPI/RFC OTDs are encoding independent of the SAP system. This means that OTDs created on a Unicode SAP instance can seamlessly interact with non-Unicode SAP instances, and vice versa. In addition, the marshal and unmarshal encoding methods on the IDOC_INBOUND_ASYNCHRONOUS OTD only apply to the data, and not to the SAP instance. The default for all processed byte data is UTF-8, regardless of connection type (Unicode or non-Unicode).
When attempting to unmarshal data flows using an encoding other than UTF-8, such as UTF-16, then you must also call the setUnmarshalEncoding method to specify this encoding. This enables the Adapter to properly unmarshal the byte array.
You also need to set the correct Character Set in the Environment parameters for an inbound Adapter when receiving data from SAP. This way, the Adapter knows whether it is receiving Unicode or non-Unicode data from the SAP instance. The setMarshalEncoding method is only for marshaling the OTD data into a byte array and is not related to the SAP system character set.
Like the outbound data flows mentioned above, attempting to marshal data flows using an encoding other than UTF-8, such as UTF-16, requires setting the setMarshalEncoding method to match this encoding. This enables the data received from SAP to be correctly converted to a byte array of the desired encoding.
Date and time stamp fields in the OTD are now typed as java.lang.String fields. This means that the OTD expects values assigned to date fields as YYYYMMDD, where February 14, 2006 becomes 20060214.
The data format time fields is HHMMSS, where 11:59:59 PM becomes 235959, or 12:00:00 AM becomes 000000.
The SAP Java Connector file, sapjco3.jar, is a middleware component that enables the development of SAP-compatible components and applications in Java. This component is required by the SAP BAPI OTD Wizard to create BAPI and RFC OTDs during design time, and to support inbound and outbound SAP server communication during runtime.
Since we are installing the SAP Java Connector as standalone component, certain installation files are required. Download the installation files from SAPNet. Once logged in, this link redirects you to SAP Service Marketplace. Click the following links to access the SAP Java Connector (SAP JCo) tools and services page:
SAP NetWeaver > SAP NetWeaver in Detail > Application Platform > Connectivity > Connectors > SAP Java Connector > Tools & Services
Refer to the download instructions that come with JCo for additional information.
Make sure that the version that is already there is not a more recent version than the one that is delivered with the SAP JCo.
Where JavaCAPS is the Java CAPS home directory.
msvcp71.dll
msvcr71.dll
These are available, free of charge, from various sources on the internet.
The instructions for the installation of SAP JCo on other operating systems are included in the corresponding download files.
/compile/lib/ext
Confirm backwards compatibility issues for the SAP Java Connector file with SAP before attempting to switch between different JCo versions on different machines.
SAP BAPI Adapters can run on a 64-bit JVM, but only after the correct 64-bit JCo files have been applied.
The SAP application must be configured to communicate with the SAP BAPI Adapter as described in Configuring SAP in the SAP BAPI Adapter Intelligent Adapter User’s Guide.
We recommend only using the directory path when setting your library path, not the directory path and file name.
Many text fields are upper case only. You may need to convert passwords to upper case for design time and runtime SAP connection configurations.
You create BAPI and RFC OTDs with the SAP BAPI wizard in the NetBeans IDE.
The New Object Type Definition Wizard dialog box appears.
The Select SAP Object page appears.
The System Parameters page appears.
|
The Login Parameters page appears.
|
The Select BAPI/RFC page appears, showing the application components
In the BAPI tree, you can navigate to a particular SAP application component and select a BAPI object.
The OTD Editor window appears, displaying the OTD.
You can now build the Collaborations or Business Processes as described in Building and Deploying the prjBAPIOutbound Sample Project and Building and Deploying the prjIDocInbound Sample Project.
When an OTD is built for an SAP business object, such as Application Components g Controlling g CostCenter, the generated OTD has methods corresponding to all BAPIs in the Cost Center Business Object of SAP. The CostCenter OTD has nodes for each of the BAPIs in the CostCenter business object. The OTD also has WSDL operations such as GetListExecute and GetListReceive. These WSDL operations are used when the OTD is used in a Business Process. The execute methods are used for client mode operations. The receive methods are used for server mode operations.
If required, you can also use the Relaunch option of the OTD to relaunch the CostCenter OTD wizard, see the figure below, and rebuild the BAPI OTD for the same BAPI/RFC. Please note that selecting a BAPI/RFC other than the original one used to build the OTD will corrupt your OTD and its associated Collaborations and Business Processes. On Relaunch, the OTD is rebuilt again with the changed metadata, and any Java Collaborations and Business Processes using this BAPI OTD are synchronized with the new changes. If your Java Collaborations or Business Processes are using OTD nodes that are now absent in the relaunched BAPI/RFC OTD, you will be prompted to correct the business rules by validation errors.