Exception avec le composant BC-SOAP : Impossible d'accéder au service web

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Exception avec le composant BC-SOAP : Impossible d'accéder au service web

omegarons274
This post has NOT been accepted by the mailing list yet.
Bonjour,

Actuellement étudiant, nous utilisons Petals pour mettre en place une architecture SOA avec Petals.

Ainsi, nous arrivons a déployer des SUs et des SAs mais il nous est impossible d'utiliser des chaînes de traitement avec SE-POJO. En effet, lorsque nous essayons d'appeler notre chaîne avec SOAP UI, nous avons l'erreur suivante :
org.ow2.petals.component.framework.api.exception.SOAP11FaultServerException: BC-SOAP Exception => Can not define the Web service address to send message to
	at org.ow2.petals.component.framework.process.MessageExchangeProcessor.processInOutAsProvider(MessageExchangeProcessor.java:659)
	at org.ow2.petals.component.framework.process.MessageExchangeProcessor.processAsProvider(MessageExchangeProcessor.java:408)
	at org.ow2.petals.component.framework.process.MessageExchangeProcessor.process(MessageExchangeProcessor.java:254)
	at org.ow2.petals.component.framework.process.MessageExchangeProcessor.run(MessageExchangeProcessor.java:188)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:724)
Caused by: javax.jbi.messaging.MessagingException: BC-SOAP Exception => Can not define the Web service address to send message to
	at org.ow2.petals.binding.soap.listener.outgoing.SOAPCaller.call(SOAPCaller.java:191)
	at org.ow2.petals.binding.soap.listener.outgoing.JBIListener.onJBIMessage(JBIListener.java:76)
	at org.ow2.petals.component.framework.process.MessageExchangeProcessor.processInOutAsProvider(MessageExchangeProcessor.java:633)

La SA et les SU qu'elle comprend se déploient bien.

Lors de l'appel, si l'on regarde les logs, on voit une consumeFlowStepFailure avec le message A business error occurs.
Nous avons tenté de modifier les jbi des services mais nous n'avons trouvé le problème.

Voici le JBI du service que nous appelons dans la chaîne :
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<jbi:jbi xmlns:jbi="http://java.sun.com/xml/ns/jbi" xmlns:analyser="http://weblab.ow2.org/core/1.2/services/analyser" xmlns:cdk5="http://petals.ow2.org/components/extensions/version-5" xmlns:soap="http://petals.ow2.org/components/soap/version-4" xmlns:ws.rouen.univ.fr="http://ws.rouen.univ.fr/" version="1.0">
    <jbi:services binding-component="true">
        <jbi:provides endpoint-name="WSUploadPort" interface-name="analyser:Analyser" service-name="ws.rouen.univ.fr:WSUploadService">

			<!--CDK Properties-->
			<cdk5:timeout>30000</cdk5:timeout>
            <cdk5:validate-wsdl>true</cdk5:validate-wsdl>
            <cdk5:forward-security-subject>false</cdk5:forward-security-subject>
            <cdk5:forward-message-properties>false</cdk5:forward-message-properties>
            <cdk5:forward-attachments>false</cdk5:forward-attachments>
            <cdk5:wsdl>analyser.wsdl</cdk5:wsdl>

			<!--Component's Specific Properties-->
			<soap:address>http://192.168.41.16:8181/collectUploadSportifs/analyser</soap:address>
            <soap:soap-version>1.1</soap:soap-version>
            <soap:chunked-mode>false</soap:chunked-mode>
            <soap:cleanup-transport>true</soap:cleanup-transport>
            <soap:mode>SOAP</soap:mode>
        </jbi:provides>
    </jbi:services>
</jbi:jbi>


Voici le JBI du du provider de la chaîne :
<jbi:provides xmlns:jbi="http://java.sun.com/xml/ns/jbi" xmlns:Chain="http://weblab.ow2.org/Chain/" xmlns:cdk5="http://petals.ow2.org/components/extensions/version-5" xmlns:pojo="http://petals.ow2.org/components/pojo/version-2" endpoint-name="ChainEndpoint" interface-name="Chain:ChainPortType" service-name="Chain:ChainUploadTest">

	<!--CDK Properties-->
	<cdk5:timeout>30000</cdk5:timeout>
    <cdk5:validate-wsdl>true</cdk5:validate-wsdl>
    <cdk5:forward-security-subject>false</cdk5:forward-security-subject>
    <cdk5:forward-message-properties>false</cdk5:forward-message-properties>
    <cdk5:forward-attachments>false</cdk5:forward-attachments>
    <cdk5:wsdl>ServiceChainTest_0.wsdl</cdk5:wsdl>

	<!--Component's Specific Properties-->
	<pojo:class-name>org.ow2.weblab.petals.pojo.ProcessingChainTest</pojo:class-name>
</jbi:provides>


Voici le JBI du consumer de la chaîne :
<jbi:consumes xmlns:jbi="http://java.sun.com/xml/ns/jbi" xmlns:Chain="http://weblab.ow2.org/Chain/" xmlns:cdk5="http://petals.ow2.org/components/extensions/version-5" xmlns:soap="http://petals.ow2.org/components/soap/version-4" interface-name="Chain:ChainPortType" service-name="Chain:ChainUploadTest">

	<!--CDK Properties-->
	<cdk5:timeout>30000</cdk5:timeout>
    <cdk5:operation>Chain:process</cdk5:operation>
    <cdk5:mep>InOut</cdk5:mep>

	<!--Component's Specific Properties-->
	<soap:service-name>ChainPortType</soap:service-name>
    <soap:soap-action>process</soap:soap-action>
    <soap:mode>SOAP</soap:mode>
    <soap:enable-http-transport>true</soap:enable-http-transport>
    <soap:enable-jms-transport>true</soap:enable-jms-transport>
</jbi:consumes>
Reply | Threaded
Open this post in threaded view
|

Re: Exception avec le composant BC-SOAP : Impossible d'accéder au service web

Christophe DENEUX
Administrator
This post was updated on .
Salut,

Je ne vois pas d'erreur particulière. Peut-être se situe-t-elle dans ton POJO ? Peux-tu nous transmettre le code du POJO, la partie concernant l'envoi de message en provider SOAP ?

Pour éliminer le cas d'une erreur de config sur le lien "provider SOAP" vers "web-service externe", peux-tu créer un consumer SOAP qui invoque ton provider SOAP, et faire une invocation depuis SoapUI ? En quelques sortes tu créés un proxy du web-service externe.

@+
Christophe DENEUX
Petals ESB Architect
Linagora
Twitter: @ChrisDENEUX
Reply | Threaded
Open this post in threaded view
|

Re: Exception avec le composant BC-SOAP : Impossible d'accéder au service web

omegarons274
This post has NOT been accepted by the mailing list yet.
Bonjour,

Merci de votre réponse. Je n'ai pas pu vous répondre avant mais en effet, le problème venait bien du POJO. Nous arrivions à consommer le POJO, même si celui-ci nous renvoyait une erreur.

Cordialement
Reply | Threaded
Open this post in threaded view
|

Re: Exception avec le composant BC-SOAP : Impossible d'accéder au service web

Christophe DENEUX
Administrator
Bonjour,

Et avez vous résolu le problème initial ? Si oui, pourriez vous nous partager l'origine du problème dans le POJO ?

Merci,
Christophe DENEUX
Petals ESB Architect
Linagora
Twitter: @ChrisDENEUX