Class BapiXmlGenerator

java.lang.Object
com.adaptris.core.ServiceImp
com.adaptris.core.licensing.LicensedService
com.adaptris.core.sap.jco3.rfc.dynamic.RfcXmlGenerator
com.adaptris.core.sap.jco3.rfc.dynamic.BapiXmlGenerator
All Implemented Interfaces:
AdaptrisComponent, ComponentLifecycle, ComponentLifecycleExtension, ConfigComment, ConnectedService, com.adaptris.core.licensing.LicensedComponent, MessageEventGenerator, Service, StateManagedComponent

@ComponentProfile(summary="Helper that generates an XML input file for a SAP BAPI", tag="service,sap,bapi", recommended={ConfiguredRfcConnection.class,DynamicRfcConnection.class}) public class BapiXmlGenerator extends RfcXmlGenerator
Service implementation that generates an XML input file sample for a BAPI.

This service determines the BAPI to invoke based on the the xpath local-name(/*). After querying the configured repository, it generates a sample document that contains all the elements required to execute a BAPI. If you map your input file to the generated example, then it will be possible to use DynamicBapiProducer as your producer without explicitly configuring any ExportParameter or ImportParameter instances.

  • Input parameters will always be a child of the [BAPI_NAME]/INPUT element
  • Output parameters will always be a child of the [BAPI_NAME]/OUTPUT element
  • Table parameters will be a child of the [BAPI_NAME]/INPUT/TABLES element and also the [BAPI_NAME]/OUTPUT/TABLES element as tables could form both a an input and output parameter; how you can have multiple rows for a table parameter should be obvious from the resulting XML.
  • CHANGING parameters are not currently supported.
  • Every element has attribute information for mapping and informational purposes; it is redundant at runtime
See Also:

In the adapter configuration file this class is aliased as sapjco3-bapi-xml-generator which is the preferred alternative to the fully qualified classname when building your configuration.

License Required: ENTERPRISE

  • Constructor Details

    • BapiXmlGenerator

      public BapiXmlGenerator()