Show TOC

Application Program Interfaces for Outbound Proxy CommunicationLocate this document in the navigation structure

Use

You use the following SAP-specific interface patterns to extend the control of the applications over the outbound proxy runtime. You use XIManagementInterfaceFactory, XIManagementInterface, and XIMessageContext to enable the Java WS outbound proxies for XI message communication. You can use the above APIs to enable XI communication via Java Proxy Runtime (JPR).

More information about JPR: Java Proxy Runtime .

XIManagementInterfaceFactory

  • Factory class name

    com.sap.engine.services.webservices.espbase.client.api.XIManagementInterfaceFactory

  • Factory methods

    //Creates an implementation of XIManagementInterface for the specified port.
     XIManagementInterface create(Object port);
    
                      

XIManagementInterface

This is an interface pattern which provides extended control over the XI management of the outbound proxies.

  • Extension interface name

    com.sap.engine.services.webservices.espbase.client.api.XIManagementInterface

  • Factory class name

    com.sap.engine.services.webservices.espbase.client.api.XIManagementInterfaceFactory

  • Interface methods

    //Configures the type of the Java runtime transport: XI or SOAP
     void useXITransport(boolean useXICommunication);
     //Returns the type of the Java runtime transport, true identifies an XI transport
     boolean getUseXITransport();
     //Returns request XI message context
     XIMessageContext getRequestXIMessageContext();
     //Configures an implementation of interface ESPXIMessageProcessor. This implementation 
     //represents the XI transport and is used by the Java runtime to communicate with 
     //the IS in an XI manner (with XI messages). This method can be used for testing purposes.
     void setESPXIMessageProcessor(ESPXIMessageProcessor xiMessageProcessor);
     //Returns the implementation of the interface ESPXIMessageProcessor which is used by the Java 
     //runtime for performing an XI communication
     ESPXIMessageProcessor getESPXIMessageProcessor();
    
                      

XIMessageContext

This is an interface pattern which provides extended control over the XI messages.

  • Extension interface name

    com.sap.engine.services.webservices.espbase.client.api.XIMessageContext

  • Factory class name

    com.sap.engine.services.webservices.espbase.client.api.XIManagementInterfaceFactory

  • Interface methods

    //Configures application acknowledgement listener name
     void setApplicationAckRequested(String ackListenerName);
    //Configures system acknowledgement listener name
     void setSystemAckRequested(String ackListenerName);
    //Configures application error acknowledgement listener name
     void setApplicationErrorAckRequested(String ackListenerName);
    //Configures system error acknowledgement listener name
     void setSystemErrorAckRequested(String ackListenerName);
    //Configures sender party name
     void setSenderPartyName(String senderPartyName);
    //Configures sender service name
     void setSenderService(String senderService);
    //Configures queue id
     void setQueueId(String queueId);
    //Adds a receiver
     void addReceiver(String receiverPartyName, String receiverPartyAgency,String 
                    hreceiverPartyScheme, String receiverService);
    //Removes all receivers
     void clearReceivers();
    
                      

The table below explains the usage of the XIMessageContext methods.

Value

Description

void setApplicationAckRequested(String ackListenerName);

This method requests positive application acknowledgment and verifies that the receiver processes the message successfully.

The value of ackListenerName is the JNDI name of the acknowledgement listener bean.

void setSystemAckRequested(String ackListenerName);

This method requests positive system acknowledgement and verifies that the receiver is reached successfully.

For provider proxies, this means that the implementing class for the provider proxy can be found and the method for inbound processing can be requested.

The value of ackListenerName is the JNDI name of the acknowledgement listener bean.

void setApplicationErrorAckRequested(String ackListenerName);

This method requests negative application acknowledgment and indicates if an error occurred during message processing at the receiver.

The value of ackListenerName is the JNDI name of the acknowledgement listener bean.

void setSystemErrorAckRequested(String ackListenerName);

This method requests negative system acknowledgment and generates messaging runtime reports that an error has occurred during transfer or processing of the message on its way to the receiver. For example, an error in a mapping program or a missing provider proxy in the receiver system could trigger this acknowledgment.

The value of ackListenerName is the JNDI name of the acknowledgement listener bean.

void setQueueId(String queueId);

This method enables you to assign a serialization context to multiple messages and to guarantee the quality of service exactly once in order.

The string queueId is upper case-sensitive and can be maximum 16 characters long.

All asynchronous messages with the same serialization context are received in the same order at the receiver side as they were entered in the outbound queue during the commit job of the sender side.

void addReceiver(String receiverPartyName, String receiverPartyAgency, String receiverPartyScheme, String receiverService);

This method adds a receiver to the set of all receivers in the consumer proxy. You must specify the communication party, the issuing agency, and the identification scheme in cross-company communication.

void clearReceivers();

This method deletes all specified receivers.