
Sie verwenden die folgenden SAP-spezifischen Interface-Pattern, um die Steuerung von Anwendungen durch die Outbound-Proxy-Laufzeit zu erweitern. Sie verwenden XIManagementInterfaceFactory, XIManagementInterface und XIMessageContext, um die Java-WS-Outbound-Proxys für die XI-Message-Kommunikation zu aktiveren. Sie können die oben genannten APIs dazu verwenden, die XI-Kommunikation über die Java-Proxy-Laufzeit (JPR) zu aktivieren.
Weitere Informationen zur JPR finden Sie unter: Java-Proxy-Laufzeit .
XIManagementInterfaceFactory
Factory-Klassenname
com.sap.engine.services.webservices.espbase.client.api.XIManagementInterfaceFactory
Factory-Methoden
//Creates an implementation of XIManagementInterface for the specified port.
XIManagementInterface create(Object port);
XIManagementInterface
Dies ist ein Interface-Pattern, das erweiterte Steuerung des XI-Managements der Outbound-Proxys ermöglicht.
Extension-Interface-Name
com.sap.engine.services.webservices.espbase.client.api.XIManagementInterface
Factory-Klassenname
com.sap.engine.services.webservices.espbase.client.api.XIManagementInterfaceFactory
Interface-Methoden
//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
Dies ist ein Interface-Pattern, das erweiterte Steuerung der XI-Messages ermöglicht.
Extension-Interface-Name
com.sap.engine.services.webservices.espbase.client.api.XIMessageContext
Factory-Klassenname
com.sap.engine.services.webservices.espbase.client.api.XIManagementInterfaceFactory
Interface-Methoden
//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();
In der untenstehenden Tabelle wird die Verwendung der XIMessageContext -Methoden erklärt:
|
Wert |
Beschreibung |
|---|---|
|
void setApplicationAckRequested(String ackListenerName); |
Diese Methode fordert ein positives Anwendungs-Acknowledgement an und bestätigt, dass der Empfänger die Message erfolgreich verarbeitet. Der Wert von ackListenerName ist der JNDI-Name der Acknowledgement-Listener-Bean. |
|
void setSystemAckRequested(String ackListenerName); |
Diese Methode fordert ein positives System-Acknowledgement an und bestätigt, dass der Empfänger erfolgreich erreicht wurde. Für Provider-Proxys bedeutet dies, dass die Implementierungsklasse für den Provider-Proxy gefunden und die Methode für die Eingangsverarbeitung angefordert werden kann. Der Wert von ackListenerName ist der JNDI-Name der Acknowledgement-Listener-Bean. |
|
void setApplicationErrorAckRequested(String ackListenerName); |
Die Methode fordert ein negatives Anwendungs-Acknowledgement an und zeigt an, ob bei der Verarbeitung der Message beim Empfänger ein Fehler aufgetreten ist. Der Wert von ackListenerName ist der JNDI-Name der Acknowledgement-Listener-Bean. |
|
void setSystemErrorAckRequested(String ackListenerName); |
Diese Methode fordert ein negatives System-Acknowledgement an und generiert einen Messaging-Laufzeit-Report, der anzeigt, dass bei der Übertragung oder Verarbeitung der Message auf ihrem Weg zum Empfänger ein Fehler aufgetreten ist. So können beispielsweise Fehler im Mapping-Programm oder ein fehlender Provider-Proxy im Empfängersysten dieses Acknowledgement auslösen. Der Wert von ackListenerName ist der JNDI-Name der Acknowledgement-Listener-Bean. |
|
void setQueueId(String queueId); |
Diese Methode ermöglicht es Ihnen, mehreren Messages einen Serialisierungskontext zuzuordnen und Exactly Once In Order als Quality of Service zu garantieren. Der String queueId berücksichtigt Großschreibung und kann maximal 16 Zeichen haben. Alle asynchronen Messages mit dem gleichen Serialisierungskontext werden in der gleichen Reihenfolge auf der Empfängerseite empfangen, wie sie beim Commit auf der Sender-Seite in der Ausgangsqueue abgelegt wurden. |
|
void addReceiver(String receiverPartyName, String receiverPartyAgency, String receiverPartyScheme, String receiverService); |
Diese Methode fügt der Menge der Empfänger im Consumer-Proxy einen Empfänger hinzu. Bei unternehmensübergreifender Kommunikation müssen Sie hierbei den Kommunikationspartner, die vergebende Agentur und das Identifikationsschema angeben. |
|
void clearReceivers(); |
Diese Methode entfernt alle angegebenen Empfänger. |