2014-04-21 4 views
0

J'ai développé le projet JBOSS ESB et créé un proxy pour le service et appelé avec succès.Comment mentionner l'emplacement wsdl dans JBOSS ESB

Mais, l'emplacement wsdl en dur codé.

<?xml version="1.0"?> 
<jbossesb parameterReloadSecs="5" 
    xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.3.1.xsd" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.3.1.xsd http://anonsvn.jboss.org/repos/labs/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.3.1.xsd"> 
    <services> 
     <service category="Stock" description="Stock Quote" invmScope="GLOBAL" 
      name="Quote"> 
      <listeners> 
       <http-gateway name="StockQuote-GwListener" /> 
      </listeners> 
      <actions mep="RequestResponse"> 
       <action class="org.jboss.soa.esb.actions.soap.proxy.SOAPProxy" 
        name="proxy"> 
        <property name="wsdl" 
         value="http://localhost:8081/service_sample/services/addSoapPort?wsdl" /> 
       </action> 
      </actions> 
     </service> 
    </services> 
</jbossesb> 

wsdl l'emplacement ci-dessous est codé en dur, comment rendre cela configurable?

<property name="wsdl" 
          value="http://localhost:8081/service_sample/services/addSoapPort?wsdl" /> 

Comment gérer cela?

Y a-t-il une autre configuration à faire?

S'il vous plaît aidez-moi ..

+0

S'il vous plaît comment nous les extraits de wsdl afin que nous puissions mieux comprendre votre problème. – Namphibian

+0

s'il vous plaît vérifier le code édité. – user3500159

Répondre

0

Créez un dossier nommé wsdl dans votre projet, et placez vos fichiers WSDL là.

Après vous pouvez changer votre définition d'action à ceci:

<action class="org.jboss.soa.esb.actions.soap.proxy.SOAPProxy" name="proxy"> 
       <property name="wsdl" 
        value="claspath:///wsdl/your.wsdl" /> 
       <property name="endpointUrl" value="${service.url}"/> 
      </action> 

Dans le endpointURL vous pouvez coder en dur l'url de votre webservice, ou placez-le dans un fichier de propriété (comme indiqué ci-dessus)

Pour utiliser un fichier de propriété, vous aurez besoin d'un fichier jboss-service.xml sous META-INF:

<?xml version="1.0" encoding="UTF-8"?> 
    <server> 
    <mbean code="org.jboss.varia.property.SystemPropertiesService" name="jboss.util:type=Service,name=YourPropertyName"> 
    <attribute name="URLList">/home/foo/your.properties</attribute> 
    <attribute name="Properties" /> 
</mbean> 

Dans le fichier /home/foo/your.properties juste ajouter l'url:

service.url=http://yourservice.url 
Questions connexes