I'll like to bring some precision once again.
I have tried some test scenario.
When i specify the service wsdl location:
http://localhost.8081/creditprocess/schufa at
the first time monitoring component receive a request. Hier some output:
| Starting daemon thread...ok.
| - Listening to port: 8081
|
| 1. Incoming TCP connection from 127.0.0.1:1089
| log4j:WARN Detected problem with connection: java.net.SocketException: Software
| caused connection abort: socket write error
| 1. Received request
| - Request URL: '/creditprocess/schufa'
| - Request did not include a SOAP message.
| - Searching endpoint URL with target 'portal:Schufa'
| - Endpoint URL found:
'http://127.0.0.1:8080/axis/services/SchufaServiceB',
| known response time is '8000'
| - Calling remote service (timeout 16000ms)...done. (Call duration: 7581 ms)
| 1. Sending response to client...done.
| 1. Request was successfully handled.
|
but if i deployed the schufa service as process partner and specify the wsdl-location to
http://localhost:8080/schufa/schufaWS?wsdl, i can send the message to the service
endpoint:
http://localhost:8080/schufa/schufaWS. In this case the jbpm-module runns
perfectly and i can see the exanged Message persisted in the DB:
|
| Client SOAPRequest to loanapproval process:
|
| <SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
| <SOAP-ENV:Body>
| <m:apply xmlns:m="urn:samples:loanapproval">
| <loanRequestParameters>
| <firstName>MyFirstName</firstName>
| <lastName>MyLastName</lastName>
| <amount>1000</amount>
| </loanRequestParameters>
| </m:apply>
| </SOAP-ENV:Body>
| </SOAP-ENV:Envelope>
|
|
| loanRequestParameters:
|
| <?xml version="1.0" encoding="UTF-8"?>
| <loanRequestParameters
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:m="urn:samples:loanapproval"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
| <firstName>MyfirstName</firstName>
| <lastName>MyLastName</lastName>
| <amount>1000</amount>
| </loanRequestParameters>
|
| loanResponse:
|
| <?xml version="1.0" encoding="UTF-8"?>
| <loanResponse><approved
xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:soapBodyNS="urn:samples:schufa"
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:nil="1"/>
| </loanResponse>
|
| validCustomerReturn:
|
| <?xml version="1.0"
encoding="UTF-8"?><validCustomerReturn
xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:soapBodyNS="urn:samples:schufa"
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:nil="1"/>
|
| _firstname:
|
| <?xml version="1.0" encoding="UTF-8"?>
| <_firstname
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
| xmlns:m="urn:samples:loanapproval"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">MyFirs...
| </_firstname>
|
| _surname:
|
| <?xml version="1.0" encoding="UTF-8"?>
| <_surname
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
| xmlns:m="urn:samples:loanapproval"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">MyLast...
| </_surname>
Know when send a soap message directly to
http://localhost:8081/creditprocess/schufa and
specify the parameter value in the SOAP request its running fine.
Some possible cause of this problem is that i'm try to integrate an non ws4ee web
service with my bussiness process. The jBPM module require a java classe as service
endpoint interface. With this he can access the message send and can persist this using
hibernate (endpoint=http://localhost:8080/schufa/schufaWS). But if the service i'm
trying to access is not a java service endpoint
(endpoint=http://localhost:8081/creditprocess/schufa) then the service Handler can't
access the exchanged soap messages. This may be why the request is sent to the specified
endpoint but there is no soap message inside.
With the first prototype the BPEL engine was BPEL4J from IBM and the services was deployed
on the SOAP-Engine Axis and the monitoring component (java program) could catch the web
service call inside the process execution an redirect it to the monitoring module without
problem. Because of some features of jBPM by executing BPEL-Processes i'll like to
substituate BPEL4J with jBPM and expect to get full access to the process execution
information.
I hope this can help a little bit.
The serverLog is avialabe (email).
Thanks once again
Bertrand Njipwo
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3994221#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...