Cette rubrique s'applique uniquement à la configuration IBM Business Process Manager Advanced.

Définition de référence

Les clients SCA et non SCA qui appellent un composant de service ont besoin d'une référence à ce service pour l'appeler. Les références peuvent être définies comme références autonomes dans le fichier sca.reference ou comme références en ligne dans une définition de composition de service.

Chaque référence possède un nom, qui permet à un client de rechercher le service approprié à l'aide du modèle de programmation du client. En plus du nom, une référence inclut également un élément d'interface. La multiplicité d'une référence indique le nombre de définitions de connexion qui peuvent désigner cette référence comme source. Enfin, la définition de connexion spécifie le nom du composant de service cible ou de l'importation qui résout la référence.

Il existe deux manières de définir des références. La première consiste à placer la référence en ligne dans la définition de composant de service. Si cette approche est utilisée, les références ne sont disponibles que pour le composant de service dans lequel les références sont incluses. Une autre approche consiste à inclure les définitions de référence dans le fichier des références autonomes. Pour cette approche, les références peuvent être utilisées par un client non SCA ou un autre composant du module. Par exemple, un composant d'interface graphique tel qu'une page JSP peut avoir besoin de pouvoir appeler un service particulier. Le client a besoin d'une référence afin de pouvoir utiliser l'environnement d'exécution SCA pour rechercher le service approprié à appeler.

Figure 1. Les clients peuvent appeler un composant de service à l'aide de références autonomes ou en ligne
Les clients peuvent appeler un composant de service à l'aide de références autonomes ou en ligne
Voici un exemple qui illustre la définition du composant qui inclut deux références en ligne : DelayedServicePortTypePartner et RealtimeServicePortTypePartner. Notez que le composant inclut les définitions d'une interface WSDL, de deux références et d'une implémentation.
<?xml version="1.0" encoding="UTF-8" ?>
<scdl:component xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"      
     xmlns:mfc="http://www.ibm.com/xmlns/prod/websphere/scdl/mfc/8.5.0"  	
     xmlns:ns1="http://Resources/StockQuoteService"  	
     xmlns:ns2="http://stockquote.samp.sibx.websphere.ibm.com/DelayedService/"  	
     xmlns:ns3="http://stockquote.samp.sibx.websphere.ibm.com/RealtimeService/"  	
     xmlns:scdl="http://www.ibm.com/xmlns/prod/websphere/scdl/8.5.0"  	
     xmlns:wsdl="http://www.ibm.com/xmlns/prod/websphere/scdl/wsdl/8.5.0"  	
     DisplayName="StockQuote_MediationFlow" name="StockQuote_MediationFlow">   
<interfaces>      
   <interface xsi:type="wsdl:WSDLPortType" portType="ns1:StockQuoteService"/>   
</interfaces>   
<references>    
   <reference name="DelayedServicePortTypePartner">     
     <interface xsi:type="wsdl:WSDLPortType" portType="ns2:DelayedServicePortType">         
        <method name="getQuote"/>      
     </interface>      
     <wire target="DelayedService"/>   
   </reference>     
   <reference name="RealtimeServicePortTypePartner">       
     <interface xsi:type="wsdl:WSDLPortType" portType="ns3:RealtimeServicePortType">         
       <Method name="getQuote"/>      
     </interface>       
     <wire target="RealtimeService"/>     
   </reference>   
</references>   
<implementation xsi:type="mfc:MediationFlowImplementation" mfcFile="StockQuote_MediationFlow.mfc"/>
</scdl:component>