Services d'envoi

Les méthodes suivantes sont fournies avec les services d'envoi du système de messagerie sortante :

public void sendImmediate()
Cette méthode envoie immédiatement le message aux destinataires. L'appelant est bloqué jusqu'à l'envoi du message.
public void sendTransacted()
Cette méthode stocke le message dans le tableau de base de données MSGSTORE. À une heure prédéterminée, le planificateur HCL Commerce invoque un travail qui envoie tous les messages stockés en mode de traitement par lots. L'utilisation de cette méthode garantit qu'un envoi se produit uniquement après que l'appelant a validé ou terminé avec succès. Cette méthode doit être utilisée si le blocage d'un appel à l'aide de la méthode sendImmediate() ne peut pas être toléré.
public void sendReceiveImmediate()
Cette méthode est utilisée pour effectuer un envoi requête-réponse. Ce type d'envoi est utilisé avec le transport IBM MQ-JMS pour les messages d'intégration d'arrière-plan. Le contenu de la réponse est stocké en interne et peut être consulté via la méthode getReply(). Astuce : Pour effectuer un envoi-réception à l'aide du transport IBM MQ-JMS, vous devez vous assurer que vous avez défini l'attribut de mode de manière appropriée, en utilisant la console d'administration ou la méthode setConfigData() dans les services de données de message configurables.
public byte[] getResult()
Cette méthode est utilisée pour récupérer le résultat de la méthode sendReceiveImmediate(). Pour obtenir le résultat, il doit être appelé après la méthode performExecute(), qui exécute la commande SendMsgCmd. Si le service d'envoi SendReceiveImmediate est utilisé, la commande d'appel peut éventuellement récupérer le résultat (c'est-à-dire le message de réponse). Si la réponse est un message XML, les utilisateurs peuvent traiter le message de réponse de cette façon :

... byte[] result = sendMsgCmd.getResult(); String xmlResponse = new 
String(result); CommandProperty cmd = 
MessageMapperGroup.getObjectForMessage(xmlResponse,"WCS.INTEGRATION"); 
où WCS. INTEGRATION est le nom du mappeur de messages.

Pour effectuer l'étape précédente, il faut définir le contenu du message dans le fichier user_template.xml et le DTD correspondant, tout comme l'ajout d'un nouveau message XML entrant au système de messagerie. Le nom de commande peut être un nom de commande factice.


if (cmd != null) { TypedProperty tp = cmd.getRequestProperties(); 
tp contient tous les paramètres mappés.