Hello everyone,
i'm facing the following Problem. I'm trying to integrate Web Services running in
the pass on Axis 1.1 in JBoss. My Configurations: I'm using JBoss AS 4.0.4.AG and the
jpbm-bpel-1.1.beta1, jwsdp-1.6, ant-1.6.5 and java.1.5.0_06.
I have a BPEL-Process invocing some Schufa service running on Axis1.1. The deploying steps
go well but kicking the Process with an SOAPMessage generate by XMLSPy generate Runtime
Exceptions. I have tested the Schufa service alone by the same way and i can get an
response from the Axis-Service running on JBoss. When the process instance ist running it
can't succefully invoce the Schufa Service. See following stack trace:
2006-12-04 16:19:41,907 DEBUG [org.jbpm.bpel.relation.jms.StartListener] caught exception
while passing control to process, searching for handler
| org.jbpm.graph.def.DelegationException
| at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:349)
| at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:343)
| at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:343)
| at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:343)
| at org.jbpm.bpel.def.Activity.enter(Activity.java:88)
| at org.jbpm.graph.def.Transition.take(Transition.java:119)
| at org.jbpm.graph.def.Node.leave(Node.java:382)
| at org.jbpm.bpel.def.Activity.leave(Activity.java:148)
| at org.jbpm.bpel.def.ProcessInstanceStarter.visit(ProcessInstanceStarter.java:43)
| at org.jbpm.bpel.def.Receive.accept(Receive.java:64)
| at org.jbpm.bpel.def.Receive$$FastClassByCGLIB$$516412f0.invoke(<generated>)
| at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
| at
org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.intercept(CGLIBLazyInitializer.java:163)
| at org.jbpm.bpel.def.Receive$$EnhancerByCGLIB$$dca8bbaa.accept(<generated>)
| at org.jbpm.bpel.def.ProcessInstanceStarter.visit(ProcessInstanceStarter.java:82)
| at org.jbpm.bpel.def.Sequence.accept(Sequence.java:84)
| at org.jbpm.bpel.def.ProcessInstanceStarter.visit(ProcessInstanceStarter.java:29)
| at org.jbpm.bpel.def.BpelDefinition.messageReceived(BpelDefinition.java:110)
| at org.jbpm.bpel.relation.jms.StartListener.onMessage(StartListener.java:94)
| at org.jboss.mq.SpyMessageConsumer.run(SpyMessageConsumer.java:694)
| at java.lang.Thread.run(Unknown Source)
| Caused by: org.jbpm.graph.def.DelegationException
| at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:349)
| at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:343)
| at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:343)
| at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:343)
| at org.jbpm.bpel.def.Activity.enter(Activity.java:88)
| at org.jbpm.graph.def.Transition.take(Transition.java:119)
| at org.jbpm.graph.def.Node.leave(Node.java:382)
| at org.jbpm.bpel.def.Activity.leave(Activity.java:148)
| at org.jbpm.bpel.def.Assign.execute(Assign.java:41)
| at org.jbpm.bpel.def.Activity.enter(Activity.java:83)
| ... 16 more
| Caused by: java.lang.RuntimeException: service not found:
service={urn:samples:schufa}SchufaService
| at
org.jbpm.bpel.service.exe.SoapEndpointReference.selectPort(SoapEndpointReference.java:131)
| at
org.jbpm.bpel.service.exe.SoapEndpointReference.selectPort(SoapEndpointReference.java:84)
| at
org.jbpm.bpel.relation.jms.RelationContext.getPortConsumer(RelationContext.java:191)
| at org.jbpm.bpel.relation.jms.JmsRelationService.invoke(JmsRelationService.java:134)
| at org.jbpm.bpel.def.Invoke.execute(Invoke.java:28)
| at org.jbpm.bpel.def.Activity.enter(Activity.java:83)
| ... 21 more
| 2006-12-04 16:19:41,917 ERROR [org.jbpm.bpel.relation.jms.StartListener] could not
start process instance
| org.jbpm.graph.def.DelegationException
| at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:349)
| at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:343)
| at org.jbpm.bpel.relation.jms.StartListener.onMessage(StartListener.java:98)
| at org.jboss.mq.SpyMessageConsumer.run(SpyMessageConsumer.java:694)
| at java.lang.Thread.run(Unknown Source)
| Caused by: org.jbpm.graph.def.DelegationException
| at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:349)
| at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:343)
| at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:343)
| at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:343)
| at org.jbpm.bpel.def.Activity.enter(Activity.java:88)
| at org.jbpm.graph.def.Transition.take(Transition.java:119)
| at org.jbpm.graph.def.Node.leave(Node.java:382)
| at org.jbpm.bpel.def.Activity.leave(Activity.java:148)
| at org.jbpm.bpel.def.ProcessInstanceStarter.visit(ProcessInstanceStarter.java:43)
| at org.jbpm.bpel.def.Receive.accept(Receive.java:64)
| at org.jbpm.bpel.def.Receive$$FastClassByCGLIB$$516412f0.invoke(<generated>)
| at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
| at
org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.intercept(CGLIBLazyInitializer.java:163)
| at org.jbpm.bpel.def.Receive$$EnhancerByCGLIB$$dca8bbaa.accept(<generated>)
| at org.jbpm.bpel.def.ProcessInstanceStarter.visit(ProcessInstanceStarter.java:82)
| at org.jbpm.bpel.def.Sequence.accept(Sequence.java:84)
| at org.jbpm.bpel.def.ProcessInstanceStarter.visit(ProcessInstanceStarter.java:29)
| at org.jbpm.bpel.def.BpelDefinition.messageReceived(BpelDefinition.java:110)
| at org.jbpm.bpel.relation.jms.StartListener.onMessage(StartListener.java:94)
| ... 2 more
| Caused by: org.jbpm.graph.def.DelegationException
| at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:349)
| at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:343)
| at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:343)
| at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:343)
| at org.jbpm.bpel.def.Activity.enter(Activity.java:88)
| at org.jbpm.graph.def.Transition.take(Transition.java:119)
| at org.jbpm.graph.def.Node.leave(Node.java:382)
| at org.jbpm.bpel.def.Activity.leave(Activity.java:148)
| at org.jbpm.bpel.def.Assign.execute(Assign.java:41)
| at org.jbpm.bpel.def.Activity.enter(Activity.java:83)
| ... 16 more
| Caused by: java.lang.RuntimeException: service not found:
service={urn:samples:schufa}SchufaService
| at
org.jbpm.bpel.service.exe.SoapEndpointReference.selectPort(SoapEndpointReference.java:131)
| at
org.jbpm.bpel.service.exe.SoapEndpointReference.selectPort(SoapEndpointReference.java:84)
| at
org.jbpm.bpel.relation.jms.RelationContext.getPortConsumer(RelationContext.java:191)
| at org.jbpm.bpel.relation.jms.JmsRelationService.invoke(JmsRelationService.java:134)
| at org.jbpm.bpel.def.Invoke.execute(Invoke.java:28)
| at org.jbpm.bpel.def.Activity.enter(Activity.java:83)
| ... 21 more
| 2006-12-04 16:19:42,097 DEBUG [org.jbpm.JbpmContext] closing JbpmContext
| 2006-12-04 16:19:42,097 DEBUG [org.jbpm.svc.Services] closing service
'persistence': org.jbpm.persistence.db.DbPersistenceService@1a83205
| 2006-12-04 16:19:42,097 DEBUG [org.jbpm.persistence.db.DbPersistenceService] rolling
back hibernate transaction
| 2006-12-04 16:19:42,097 DEBUG [org.hibernate.transaction.JDBCTransaction] rollback
| 2006-12-04 16:19:42,127 DEBUG [org.hibernate.transaction.JDBCTransaction] re-enabling
autocommit
| 2006-12-04 16:19:42,127 DEBUG [org.hibernate.transaction.JDBCTransaction] rolled back
JDBC Connection
| 2006-12-04 16:19:42,127 DEBUG [org.hibernate.jdbc.ConnectionManager] aggressively
releasing JDBC connection
| 2006-12-04 16:19:42,127 DEBUG [org.hibernate.jdbc.ConnectionManager] releasing JDBC
connection [ (open PreparedStatements: 0, globally: 0) (open ResultSets: 0, globally: 0)]
| 2006-12-04 16:19:42,127 DEBUG [org.jbpm.persistence.db.DbPersistenceService] closing
hibernate session
| 2006-12-04 16:19:42,137 DEBUG [org.jbpm.svc.Services] closing service
'relation': org.jbpm.bpel.relation.jms.JmsRelationService@16c2195
| 2006-12-04 16:20:33,751 DEBUG [org.jbpm.bpel.service.provider.PortProvider] response
timeout expired: JMS_TQ1
| 2006-12-04 16:20:33,751 DEBUG [javax.xml.rpc.soap.SOAPFaultException] new
SOAPFaultException [
code={http://schemas.xmlsoap.org/soap/envelope/}Server,string=The
service is not in an appropiate state for the requested operation,actor=null,detail=null]
| 2006-12-04 16:20:33,761 DEBUG [org.jbpm.bpel.service.provider.PortProvider] request
caused a fault
| javax.xml.rpc.soap.SOAPFaultException: The service is not in an appropiate state for
the requested operation
| at
org.jbpm.bpel.service.provider.PortProvider.receiveResponse(PortProvider.java:460)
| at org.jbpm.bpel.service.provider.PortProvider.handleRequest(PortProvider.java:204)
| at
org.jboss.webservice.handler.HandlerWrapper.handleRequest(HandlerWrapper.java:121)
| at
org.jboss.webservice.handler.HandlerChainBaseImpl.handleRequest(HandlerChainBaseImpl.java:231)
| at
org.jboss.webservice.handler.ServerHandlerChain.handleRequest(ServerHandlerChain.java:67)
| at
org.jboss.webservice.server.InvokerProviderJSE.invokeTarget(InvokerProviderJSE.java:87)
| at org.jboss.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:121)
| at org.jboss.axis.providers.java.JavaProvider.invoke(JavaProvider.java:358)
| at org.jboss.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:73)
| at org.jboss.axis.SimpleChain.doVisiting(SimpleChain.java:160)
| at org.jboss.axis.SimpleChain.invoke(SimpleChain.java:123)
| at org.jboss.axis.handlers.soap.SOAPService.invoke(SOAPService.java:560)
| at org.jboss.webservice.server.ServerEngine.invokeInternal(ServerEngine.java:215)
| at org.jboss.webservice.server.ServerEngine.invoke(ServerEngine.java:104)
| at org.jboss.axis.transport.http.AxisServlet.doPost(AxisServlet.java:911)
| at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
| at org.jboss.axis.transport.http.AxisServletBase.service(AxisServletBase.java:370)
| at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
| at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
| at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
| at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
| at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
| at
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
| at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
| at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
| at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
| at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
| at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
| at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
| at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
| at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
| at
org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
| at java.lang.Thread.run(Unknown Source)
| 2006-12-04 16:20:33,761 DEBUG [org.jbpm.JbpmContext] closing JbpmContext
| 2006-12-04 16:20:33,761 DEBUG [org.jbpm.svc.Services] closing service
'persistence': org.jbpm.persistence.db.DbPersistenceService@67211b
| 2006-12-04 16:20:33,761 DEBUG [org.jbpm.persistence.db.DbPersistenceService]
committing hibernate transaction
| 2006-12-04 16:20:33,761 DEBUG [org.hibernate.transaction.JDBCTransaction] commit
I found out that there are some compatiblity issues when migrating Axis-Web services
specially Axis 1.1 on JBoss. I tried first to use jbossws. After i tried the downgrade to
jboss.ws4ee. With both i can't successfully call the Schufa service.
But there is something strage hier. The first time i send a SOAPMessage to the process(WS)
the server can't start a process instance. For the second time a process instance is
started but his excecution stops when calling the schufa service. Some system.out.println
in the jbpm-code gives the following trace while saving some process logs:
| 16:49:10,637 INFO [STDOUT] JbpmContext: Ready save Processinstance with ID:18
| 16:49:10,647 INFO [STDOUT] DBLoggingService: saving following ProcessLog
:processinstance[create]
| 16:49:10,958 INFO [STDOUT] DBLoggingService: saving following ProcessLog
:tokencreate[/implicit]
| 16:49:11,068 INFO [STDOUT] DBLoggingService: saving following ProcessLog
:tokencreate[/normalFlow]
| 16:49:11,088 INFO [STDOUT] DBLoggingService: saving following ProcessLog
:varcreate[${s:instance}]
| 16:49:11,599 INFO [STDOUT] DBLoggingService: saving following ProcessLog
:varupdate[${s:instance}=org.jbpm.bpel.exe.ScopeInstance@13276cc[name=<null>,id=9]]
| 16:49:11,609 INFO [STDOUT] DBLoggingService: saving following ProcessLog
:varcreate[${schufaResponse}]
| 16:49:11,779 INFO [STDOUT] DBLoggingService: saving following ProcessLog
:varupdate[${schufaResponse}=org.jbpm.bpel.data.exe.MessageValue@a029[type=MessageType(id=26),parts=<null>,id=33]]
| 16:49:11,789 INFO [STDOUT] DBLoggingService: saving following ProcessLog
:varcreate[${applyRequest}]
| 16:49:11,839 INFO [STDOUT] DBLoggingService: saving following ProcessLog
:varupdate[${applyRequest}=org.jbpm.bpel.data.exe.MessageValue@112e9e6[type=MessageType(id=25),parts=<null>,id=34]]
| 16:49:11,839 INFO [STDOUT] DBLoggingService: saving following ProcessLog
:varcreate[${schufaRequest}]
| 16:49:11,869 INFO [STDOUT] DBLoggingService: saving following ProcessLog
:varupdate[${schufaRequest}=org.jbpm.bpel.data.exe.MessageValue@ba3b30[type=MessageType(id=27),parts=<null>,id=35]]
| 16:49:11,889 INFO [STDOUT] DBLoggingService: saving following ProcessLog
:varcreate[${applyResponse}]
| 16:49:11,939 INFO [STDOUT] DBLoggingService: saving following ProcessLog
:varupdate[${applyResponse}=org.jbpm.bpel.data.exe.MessageValue@83fff9[type=MessageType(id=28),parts=<null>,id=36]]
| 16:49:11,989 INFO [STDOUT] DBLoggingService: saving following ProcessLog
:varcreate[${p:SchufaLink}]
| 16:49:12,119 INFO [STDOUT] DBLoggingService: saving following ProcessLog
:varupdate[${p:SchufaLink}=org.jbpm.bpel.service.exe.PartnerLinkInstance@1d6c275[name=SchufaLink,id=17]]
| 16:49:12,129 INFO [STDOUT] DBLoggingService: saving following ProcessLog
:varcreate[${p:LoanProcessing}]
| 16:49:12,149 INFO [STDOUT] DBLoggingService: saving following ProcessLog
:varupdate[${p:LoanProcessing}=org.jbpm.bpel.service.exe.PartnerLinkInstance@78b73f[name=LoanProcessing,id=18]]
| 16:49:12,159 INFO [STDOUT] DBLoggingService: saving following ProcessLog :token
end[/normalFlow]
| 16:49:12,169 INFO [STDOUT] DBLoggingService: saving following ProcessLog :token
end[/implicit]
| 16:49:12,179 INFO [STDOUT] DBLoggingService: saving following ProcessLog
:processinstance[end]
I don't know if this issue is related somewhere with the generated service artefacte
using jwsdp. But there is some thing wring with the generated Endpoint implementation of
the schufa service.
All my files (Similar to the example i described hier
http://www.jboss.com/index.html?module=bb&op=viewtopic&t=89839). I have just
change the approverService to Schufa Service:
loanapproval.wsdl:
<?xml version="1.0" encoding="UTF-8"?>
| <definitions
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:tns="urn:samples:loanapproval"
xmlns:loanapproval="urn:samples:loanapproval"
| xmlns:schufa="urn:samples:schufa"
xmlns:types="urn:samples:loanapprovalTypes"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
xmlns:bpel="http://schemas.xmlsoap.org/ws/2003/03/business-process/&...
xmlns:plt="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"
targetNamespace="urn:samples:loanapprova">
| <import namespace="urn:samples:schufa"
location="interface/schufa.wsdl"/>
| <types/>
| <types>
| <schema targetNamespace="urn:samples:loanapprovalTypes"
xmlns="http://www.w3.org/2001/XMLSchema">
| <element name="loanProcessFault"
type="types:loanProcessFaultType"/>
| <complexType name="loanApplicationType">
| <sequence>
| <element name="firstName" type="string"/>
| <element name="lastName" type="string"/>
| <element name="amount" type="float"/>
| </sequence>
| </complexType>
| <complexType name="approvalDecisionType">
| <sequence>
| <!--element name="approved" type="boolean"/-->
| <element name="approved" type="string"/>
| </sequence>
| </complexType>
| <complexType name="loanProcessFaultType">
| <sequence>
| <element name="ErrorCode" type="int"/>
| <element name="ErrorMessage" type="string"/>
| </sequence>
| </complexType>
| </schema>
| </types>
| <message name="applyRequest">
| <part name="loanRequestParameters"
type="types:loanApplicationType"/>
| </message>
| <message name="applyResponse">
| <part name="loanResponse"
type="types:approvalDecisionType"/>
| </message>
| <message name="applyLoanProcessFault">
| <part name="loanFault" element="types:loanProcessFault"/>
| </message>
| <portType name="LoanProcessPortType">
| <operation name="apply">
| <input message="tns:applyRequest"/>
| <output message="tns:applyResponse"/>
| <fault name="LoanProcessFault"
message="tns:applyLoanProcessFault"/>
| </operation>
| </portType>
| <plt:partnerLinkType name="LoanProcessingPLT">
| <plt:role name="lender">
| <plt:portType name="tns:LoanProcessPortType"/>
| </plt:role>
| </plt:partnerLinkType>
| </definitions>
|
loanapproval.bpel:
<?xml version="1.0" encoding="UTF-8"?>
| <process name="loanapproval" suppressJoinFailure="yes"
targetNamespace="urn:samples:loanapproval"
xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
| xmlns:tns="urn:samples:loanapproval"
xmlns:loanapproval="urn:samples:loanapproval"
xmlns:schufa="urn:samples:schufa"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:bpel="http://schemas.xmlsoap.org/ws/2003/03/business-process/&...
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://schemas.xmlsoap.org/ws/2003/03/business-p...
|
http://schemas.xmlsoap.org/ws/2003/03/business-process/">
| <partnerLinks>
| <partnerLink name="LoanProcessing"
partnerLinkType="loanapproval:LoanProcessingPLT" myRole="lender"/>
| <partnerLink name="SchufaLink"
partnerLinkType="schufa:SchufaPLT" partnerRole="schufa"/>
| </partnerLinks>
| <variables>
| <variable name="applyRequest"
messageType="loanapproval:applyRequest"/>
| <variable name="applyResponse"
messageType="loanapproval:applyResponse"/>
| <variable name="schufaRequest"
messageType="schufa:validCustomerRequest"/>
| <variable name="schufaResponse"
messageType="schufa:validCustomerResponse"/>
| </variables>
| <sequence>
| <receive createInstance="yes" name="LoanApplication"
operation="apply" partnerLink="LoanProcessing"
portType="loanapproval:LoanProcessPortType"
variable="applyRequest"/>
| <assign name="AssignLoanInfo_forApproval">
| <copy>
| <from variable="applyRequest"
query="/loanRequestParameters/lastName"
part="loanRequestParameters"/>
| <to variable="schufaRequest" part="_surname"/>
| </copy>
| <copy>
| <from variable="applyRequest"
query="/loanRequestParameters/firstName"
part="loanRequestParameters"/>
| <to variable="schufaRequest" part="_firstname"/>
| </copy>
| </assign>
| <invoke inputVariable="schufaRequest" name="SchufaCheck"
operation="validCustomer" outputVariable="schufaResponse"
partnerLink="SchufaLink" portType="schufa:SchufaWS"/>
| <assign name="AssignSchufaDecision">
| <copy>
| <from variable="schufaResponse"
part="validCustomerReturn"/>
| <to variable="applyResponse"
query="/loanResponse/approved" part="loanResponse"/>
| </copy>
| </assign>
| <reply name="ApprovalDecision" operation="apply"
partnerLink="LoanProcessing"
portType="loanapproval:LoanProcessPortType"
variable="applyResponse"/>
| </sequence>
| </process>
The following file remain unchanged from the above link: jboss-web.xml, web.xml,
webservices.xml, wscompile.xml, jboss-client.xml.
For the Schufa Web Service as partner.
schufa.wsdl:
| <?xml version="1.0" encoding="UTF-8"?>
| <definitions
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:tns="urn:samples:schufa"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:plt="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"
targetNamespace="urn:samples:schufa"
| name="SchufaService">
| <message name="validCustomerRequest">
| <part name="_surname" type="xsd:string"/>
| <part name="_firstname" type="xsd:string"/>
| </message>
| <message name="validCustomerResponse">
| <part name="validCustomerReturn" type="xsd:string"/>
| </message>
| <portType name="SchufaWS">
| <operation name="validCustomer" parameterOrder="_surname
_firstname">
| <input name="validCustomerRequest"
message="tns:validCustomerRequest"/>
| <output name="validCustomerResponse"
message="tns:validCustomerResponse"/>
| </operation>
| </portType>
| <plt:partnerLinkType name="SchufaPLT">
| <plt:role name="schufa">
| <plt:portType name="tns:SchufaWS"/>
| </plt:role>
| </plt:partnerLinkType>
| </definitions>
|
|
schufa.svc.wsdl:
<?xml version="1.0" encoding="UTF-8"?>
| <definitions
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:tns="urn:samples:schufa"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
| targetNamespace="urn:samples:schufa"
xsi:schemaLocation="http://schemas.xmlsoap.org/wsdl/
http://schemas.xmlsoap.org/wsdl/">
| <import namespace="urn:samples:schufa"
location="schufa.wsdl"/>
| <binding name="SchufaSOAPBinding" type="tns:SchufaWS">
| <soap:binding style="rpc"
transport="http://schemas.xmlsoap.org/soap/http"/>
| <operation name="validCustomer">
| <soap:operation soapAction="urn:samples:schufa:validCustomer"/>
| <input>
| <soap:body use="literal"
namespace="urn:samples:schufa"/>
| </input>
| <output>
| <soap:body use="literal"
namespace="urn:samples:schufa"/>
| </output>
| </operation>
| </binding>
| <service name="SchufaService">
| <port name="SchufaPort" binding="tns:SchufaSOAPBinding">
| <soap:address location="REPLACE_WITH_ACTUAL_URI"/>
| </port>
| </service>
| </definitions>
|
web.xml
<?xml version="1.0" encoding="UTF-8"?>
| <web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
|
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
| <servlet>
| <servlet-name>schufaServlet</servlet-name>
|
<servlet-class>org.jbpm.bpel.tutorial.schufa.SchufaWS_Impl</servlet-class>
| </servlet>
| <servlet-mapping>
| <servlet-name>schufaServlet</servlet-name>
| <url-pattern>/schufaWS</url-pattern>
| </servlet-mapping>
| </web-app>
|
webservices.xml
<?xml version="1.0" encoding="UTF-8"?>
| <webservices version="1.1"
xmlns="http://java.sun.com/xml/ns/j2ee"
| xmlns:impl="urn:samples:schufa"
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
|
http://java.sun.com/xml/ns/j2ee/j2ee_web_services_1_1.xsd">
| <webservice-description>
|
<webservice-description-name>SchufaService</webservice-description-name>
| <wsdl-file>WEB-INF/wsdl/schufa.svc.wsdl</wsdl-file>
| <jaxrpc-mapping-file>WEB-INF/jaxrpc-mapping.xml</jaxrpc-mapping-file>
| <port-component>
| <port-component-name>SchufaPort</port-component-name>
| <wsdl-port>impl:SchufaPort</wsdl-port>
| <service-endpoint-interface> <!--
org.jbpm.bpel.tutorial.serviceName.portTypeName -->
| org.jbpm.bpel.tutorial.schufa.SchufaWS
| </service-endpoint-interface>
| <service-impl-bean>
| <servlet-link>schufaServlet</servlet-link>
| </service-impl-bean>
| </port-component>
| </webservice-description>
| </webservices>
|
wscompile
<?xml version="1.0" encoding="UTF-8"?>
| <configuration
xmlns="http://java.sun.com/xml/ns/jax-rpc/ri/config">
| <wsdl location="wsdl/schufa.svc.wsdl"
| packageName="org.jbpm.bpel.tutorial.schufa"/>
| </configuration>
Hier are some example of generated SOAPMessage send to the process and the schufa
services:
SOAPMessage + SOAPResponse to the 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>
|
| <env:Envelope
xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
| <env:Header/>
| <env:Body>
| <env:Fault>
| <faultcode>env:Server</faultcode>
| <faultstring>The service is not in an appropiate state for the requested
operation</faultstring>
| </env:Fault>
| </env:Body>
| </env:Envelope>
SOAPMessage to the Schufa Service
<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:validCustomer xmlns:m="urn:samples:schufa">
| <_surname xsi:type="xsd:string">MyName</_surname>
| <_firstname xsi:type="xsd:string">MyFirstName</_firstname>
| </m:validCustomer>
| </SOAP-ENV:Body>
| </SOAP-ENV:Envelope>.
I have also tried to substituate the jboss.org.axis libraries to the original
org.apache.axis. ..... like describeb hier
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3876437:
Please any one has an idea how to solve this problem?
Thanks for your advise.
Regards
Bertrand
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3991356#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...