Hi there,
I'm actually facing problems when using XPath expressions in my BPEL
process. I always get the fault message below. I was trying around for quite
a while now and I am not able to solve the problem. I was able to access the
message parts, but nothing below them (eg. DataTOin.in worked, while
$DataTOin.in/param did not). The example is oriented at chapter 8.2 (Usage
of Query and Expression Languages) of the BPEL standard (statusMessage,
statusContainer etc.). Is there anybody who knows how to solve this kind of
problem?
Any help would be greatly appreciated!!
Regards,
Christoph
#######################################
fault message
#######################################
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="
http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<soapenv:Fault>
<faultcode>soapenv:Server</faultcode>
<faultstring xmlns:axis2ns7="
http://docs.oasis-open.org/wsbpel/2.0/process/executable">axis2ns7:selectionFailure</faultstring>
<detail/>
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>
#######################################
relevant snippet of BPEL process
#######################################
<assign name="assign1">
<copy>
<!-- I tried this without the namespaces, too -->
<from
xmlns:testXsd="http://ifs/xsd">$DataTOin.in/testXsd:param/testWsdl:zahl</from>
<to
xmlns:testXsd="http://ifs/xsd">$DataTOout.out/testXsd:param/testWsdl:zahl</to>
</copy>
</assign>
##########################################
The relevant snippet from ode.log is:
##########################################
2008-05-30 15:17:57,171 : DEBUG - GeronimoLog.debug(66) | Process store
event: {ProcessStoreEvent#UNDEPLOYED:{
http://initial/testbpel}xpathTest-141<http://initial/testbpel%7DxpathTest-141>
}
2008-05-30 15:17:57,171 : DEBUG - GeronimoLog.debug(66) | Deactivating
process
{http://initial/testbpel}xpathTest-141<http://initial/testbpel%7DxpathTest-141>
2008-05-30 15:17:57,171 : DEBUG - GeronimoLog.debug(66) | Destroying
service {http://ifs}bpelService port testPort
2008-05-30 15:17:57,171 : INFO - GeronimoLog.info(79) | Unregistered
process
{http://initial/testbpel}xpathTest-141<http://initial/testbpel%7DxpathTest-141>
.
2008-05-30 15:17:57,218 : DEBUG - GeronimoLog.debug(66) | Process store
event:
{ProcessStoreEvent#DEPLOYED:{http://initial/testbpel}xpathTest-142<http://initial/testbpel%7DxpathTest-142>
}
2008-05-30 15:17:57,234 : DEBUG - GeronimoLog.debug(66) | Ignoring store
event:
{ProcessStoreEvent#DEPLOYED:{http://initial/testbpel}xpathTest-142<http://initial/testbpel%7DxpathTest-142>
}
2008-05-30 15:17:57,234 : DEBUG - GeronimoLog.debug(66) | Process store
event: {ProcessStoreEvent#ACTVIATED:{
http://initial/testbpel}xpathTest-142<http://initial/testbpel%7DxpathTest-142>
}
2008-05-30 15:17:57,234 : DEBUG - GeronimoLog.debug(66) | register: {
http://initial/testbpel}xpathTest-142<http://initial/testbpel%7DxpathTest-142>
2008-05-30 15:17:57,234 : DEBUG - GeronimoLog.debug(66) | Registering
process
{http://initial/testbpel}xpathTest-142<http://initial/testbpel%7DxpathTest-142>with
server.
2008-05-30 15:17:57,234 : DEBUG - GeronimoLog.debug(66) | Register
process: serviceId={http://ifs}bpelService:testPort,
process=BpelProcess[{http://initial/testbpel}xpathTest-142<http://initial/testbpel%7DxpathTest-142>
]
2008-05-30 15:17:57,234 : DEBUG - GeronimoLog.debug(66) | Activating {
http://initial/testbpel}xpathTest-142<http://initial/testbpel%7DxpathTest-142>
2008-05-30 15:17:57,234 : DEBUG - GeronimoLog.debug(66) | Destroying
service {http://ifs}bpelService port testPort
2008-05-30 15:17:57,234 : DEBUG - GeronimoLog.debug(66) | Couldn't find
service {http://ifs}bpelService port testPort to destroy.
2008-05-30 15:17:57,234 : DEBUG - GeronimoLog.debug(66) | Create
AxisService: service={http://ifs}bpelService port=testPort
WSDL=bpelTest.wsdl BPEL=bpelTest.bpel
2008-05-30 15:17:57,250 : DEBUG - GeronimoLog.debug(66) | Get import:
import=dto.xsd
parent=file:/C:/Programme/apache-tomcat-6.0.16/webapps/ode/WEB-INF/processes/xpathTester/bpelTest.wsdl
2008-05-30 15:17:57,250 : DEBUG - GeronimoLog.debug(66) | resolveEntity:
targetNamespace=http://ifs/xsd schemaLocation=dto.xsd
baseUri=file:/C:/Programme/apache-tomcat-6.0.16/webapps/ode/WEB-INF/processes/xpathTester/bpelTest.wsdl
2008-05-30 15:17:57,250 : DEBUG - GeronimoLog.debug(66) | Looking for
Axis2 service configuration file:
file:/C:/Programme/apache-tomcat-6.0.16/webapps/ode/WEB-INF/processes/xpathTester/bpelService.axis2
2008-05-30 15:17:57,250 : DEBUG - GeronimoLog.debug(66) | Axis2 service
configuration not found:
file:/C:/Programme/apache-tomcat-6.0.16/webapps/ode/WEB-INF/processes/xpathTester/bpelService.axis2
2008-05-30 15:17:57,250 : DEBUG - GeronimoLog.debug(66) | Setting service
with empty namespace replication
2008-05-30 15:17:57,250 : DEBUG - GeronimoLog.debug(66) | Created Axis2
service {http://ifs}bpelService
2008-05-30 15:17:57,250 : DEBUG - GeronimoLog.debug(66) | Activated {
http://initial/testbpel}xpathTest-142<http://initial/testbpel%7DxpathTest-142>myrole
testing: EPR is [EMAIL PROTECTED]
2008-05-30 15:17:57,265 : DEBUG - GeronimoLog.debug(66) | Activated {
http://initial/testbpel}xpathTest-142<http://initial/testbpel%7DxpathTest-142>
2008-05-30 15:17:57,265 : DEBUG - GeronimoLog.debug(66) | Rehydrating
process
{http://initial/testbpel}xpathTest-142<http://initial/testbpel%7DxpathTest-142>
2008-05-30 15:17:57,296 : DEBUG - GeronimoLog.debug(66) | Creating process
DAO for
{http://initial/testbpel}xpathTest-142<http://initial/testbpel%7DxpathTest-142>(guid=hqejbhcnphr3bc6es3hv5a)
2008-05-30 15:17:57,296 : INFO - GeronimoLog.info(79) | Registered process
{http://initial/testbpel}xpathTest-142<http://initial/testbpel%7DxpathTest-142>
.
2008-05-30 15:17:57,296 : INFO - GeronimoLog.info(79) | Deployment of
artifact xpathTester successful:
[{http://initial/testbpel}xpathTest-142<http://initial/testbpel%7DxpathTest-142>
]
2008-05-30 15:18:24,718 : INFO - GeronimoLog.info(79) | Received a
scheduled job event for inactive process
{orchestration:test:party2:bpel}party2-120; rescheduling job
hqejbhcnphr3bc6es3hv4r for 30.05.08 15:19
2008-05-30 15:18:24,828 : INFO - GeronimoLog.info(79) | Received a
scheduled job event for inactive process
{orchestration:test:party2:bpel}party2-113; rescheduling job
hqejbhcnphr3bc6es3hv4s for 30.05.08 15:19
2008-05-30 15:18:24,875 : INFO - GeronimoLog.info(79) | Received a
scheduled job event for inactive process
{orchestration:test:party2:bpel}party2-104; rescheduling job
hqejbhcnphr3bc6es3hv4t for 30.05.08 15:19
2008-05-30 15:18:24,890 : INFO - GeronimoLog.info(79) | Received a
scheduled job event for inactive process
{orchestration:test:party2:bpel}party2-118; rescheduling job
hqejbhcnphr3bc6es3hv4u for 30.05.08 15:19
2008-05-30 15:18:25,000 : INFO - GeronimoLog.info(79) | Received a
scheduled job event for inactive process
{orchestration:test:party2:bpel}party2-104; rescheduling job
hqejbhcnphr3bc6es3hv4w for 30.05.08 15:19
2008-05-30 15:18:25,000 : INFO - GeronimoLog.info(79) | Received a
scheduled job event for inactive process
{orchestration:test:party2:bpel}party2-115; rescheduling job
hqejbhcnphr3bc6es3hv4v for 30.05.08 15:19
2008-05-30 15:18:25,000 : INFO - GeronimoLog.info(79) | Received a
scheduled job event for inactive process
{orchestration:test:party2:bpel}party2-115; rescheduling job
hqejbhcnphr3bc6es3hv4x for 30.05.08 15:19
2008-05-30 15:18:25,046 : INFO - GeronimoLog.info(79) | Received a
scheduled job event for inactive process
{orchestration:test:party2:bpel}party2-82; rescheduling job
hqejbhcnphr3bc6es3hv50 for 30.05.08 15:19
2008-05-30 15:18:25,093 : INFO - GeronimoLog.info(79) | Received a
scheduled job event for inactive process
{orchestration:test:party2:bpel}party2-106; rescheduling job
hqejbhcnphr3bc6es3hv52 for 30.05.08 15:19
2008-05-30 15:18:25,093 : INFO - GeronimoLog.info(79) | Received a
scheduled job event for inactive process
{orchestration:test:party2:bpel}party2-80; rescheduling job
hqejbhcnphr3bc6es3hv51 for 30.05.08 15:19
2008-05-30 15:18:25,093 : INFO - GeronimoLog.info(79) | Received a
scheduled job event for inactive process
{orchestration:test:party2:bpel}party2-118; rescheduling job
hqejbhcnphr3bc6es3hv53 for 30.05.08 15:19
2008-05-30 15:18:25,140 : INFO - GeronimoLog.info(79) | Received a
scheduled job event for inactive process
{orchestration:test:party2:bpel}party2-108; rescheduling job
hqejbhcnphr3bc6es3hv54 for 30.05.08 15:19
2008-05-30 15:18:25,156 : INFO - GeronimoLog.info(79) | Received a
scheduled job event for inactive process
{orchestration:test:party2:bpel}party2-118; rescheduling job
hqejbhcnphr3bc6es3hv56 for 30.05.08 15:19
2008-05-30 15:18:25,156 : INFO - GeronimoLog.info(79) | Received a
scheduled job event for inactive process
{orchestration:test:party2:bpel}party2-122; rescheduling job
hqejbhcnphr3bc6es3hv55 for 30.05.08 15:19
2008-05-30 15:18:25,187 : INFO - GeronimoLog.info(79) | Received a
scheduled job event for inactive process
{orchestration:test:party2:bpel}party2-115; rescheduling job
hqejbhcnphr3bc6es3hv57 for 30.05.08 15:19
2008-05-30 15:18:25,187 : INFO - GeronimoLog.info(79) | Received a
scheduled job event for inactive process
{orchestration:test:party2:bpel}party2-115; rescheduling job
hqejbhcnphr3bc6es3hv59 for 30.05.08 15:19
2008-05-30 15:18:25,187 : INFO - GeronimoLog.info(79) | Received a
scheduled job event for inactive process
{orchestration:test:party2:bpel}party2-124; rescheduling job
hqejbhcnphr3bc6es3hv58 for 30.05.08 15:19
2008-05-30 15:18:57,015 : DEBUG - GeronimoLog.debug(66) | The system is
checking for the operation using the following WSAAction: urn:testIt
2008-05-30 15:18:57,015 : DEBUG - GeronimoLog.debug(66) | Checking for
Operation using SOAP message body's first child's local name : doIt
2008-05-30 15:18:57,015 : DEBUG - GeronimoLog.debug(66) | Received request
message for xpath.{http://ifs}testIt
2008-05-30 15:18:57,015 : DEBUG - GeronimoLog.debug(66) | Starting
transaction.
2008-05-30 15:18:57,015 : DEBUG - GeronimoLog.debug(66) | Routed: svcQname
{http://ifs}bpelService --> BpelProcess[{
http://initial/testbpel}xpathTest-142<http://initial/testbpel%7DxpathTest-142>
]
2008-05-30 15:18:57,015 : DEBUG - GeronimoLog.debug(66) | ODE routed to
operation Operation: name=testIt
style=REQUEST_RESPONSE,1
Input: name=null
Message: name={http://ifs}testItMsgIN
Part: name=in
elementName={http://ifs}doIt
Output: name=null
Message: name={http://ifs}testItMsgOUT
Part: name=out
elementName={http://ifs}doItResponse from service {http://ifs}bpelService
2008-05-30 15:18:57,031 : DEBUG - GeronimoLog.debug(66) | Invoking ODE
using MEX {MyRoleMex#hqejbhcnphr3bc6es3hv5t [Client hqejbhcnphr3bc6es3hv5s]
calling {http://ifs}bpelService.testIt(...)}
2008-05-30 15:18:57,031 : DEBUG - GeronimoLog.debug(66) | Message content:
<?xml version="1.0" encoding="UTF-8"?>
<message><in><doIt xmlns="http://ifs" xmlns:ns2="http://ifs"
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<param>
<s1 xmlns="http://ifs/xsd" xmlns:ns1="http://ifs/xsd">Hallo,
Hallo!!</s1>
<zahl xmlns="http://ifs/xsd" xmlns:ns1="http://ifs/xsd
">200</zahl>
</param>
</doIt></in></message>
2008-05-30 15:18:57,031 : DEBUG - GeronimoLog.debug(66) | Routed: svcQname
{http://ifs}bpelService --> BpelProcess[{
http://initial/testbpel}xpathTest-142<http://initial/testbpel%7DxpathTest-142>
]
2008-05-30 15:18:57,031 : DEBUG - GeronimoLog.debug(66) | invoke() EPR=
null ==>
BpelProcess[{http://initial/testbpel}xpathTest-142<http://initial/testbpel%7DxpathTest-142>
]
2008-05-30 15:18:57,031 : DEBUG - GeronimoLog.debug(66) | Commiting ODE
MEX {MyRoleMex#hqejbhcnphr3bc6es3hv5t [Client hqejbhcnphr3bc6es3hv5s]
calling {http://ifs}bpelService.testIt(...)}
2008-05-30 15:18:57,031 : DEBUG - GeronimoLog.debug(66) | Commiting
transaction.
2008-05-30 15:18:57,031 : DEBUG - GeronimoLog.debug(66) | >>
handleWorkEvent(jobData={mexid=hqejbhcnphr3bc6es3hv5t, pid={
http://initial/testbpel}xpathTest-142<http://initial/testbpel%7DxpathTest-142>,
type=INVOKE_INTERNAL})
2008-05-30 15:18:57,031 : DEBUG - GeronimoLog.debug(66) | InvokeInternal
event for mexid hqejbhcnphr3bc6es3hv5t
2008-05-30 15:18:57,062 : DEBUG - GeronimoLog.debug(66) | GET MEX property
org.apache.ode.bpel.myRoleSessionId = null
2008-05-30 15:18:57,062 : DEBUG - GeronimoLog.debug(66) | GET MEX property
org.apache.ode.bpel.myRoleSessionId = null
2008-05-30 15:18:57,062 : DEBUG - GeronimoLog.debug(66) | GET MEX property
org.apache.ode.bpel.partnerRoleSessionId = null
2008-05-30 15:18:57,062 : DEBUG - GeronimoLog.debug(66) | INPUTMSG:
12.testIt: MSG RCVD keys=[] mySessionId=null partnerSessionId=null
2008-05-30 15:18:57,062 : DEBUG - GeronimoLog.debug(66) | INPUTMSG:
12.testIt: routing failed, CREATING NEW INSTANCE
2008-05-30 15:18:57,062 : DEBUG - GeronimoLog.debug(66) |
BpelRuntimeContextImpl created for instance 12007. INDEXED STATE={}
2008-05-30 15:18:57,078 : DEBUG - GeronimoLog.debug(66) | SELECT:
PickResponseChannel#9: USING CORRELATOR 12.testIt
2008-05-30 15:18:57,078 : DEBUG - GeronimoLog.debug(66) | SELECT:
PickResponseChannel#9: CHECKING for NEW INSTANCE match
2008-05-30 15:18:57,078 : DEBUG - GeronimoLog.debug(66) | INPUTMSGMATCH:
Changing process instance state from ready to active
2008-05-30 15:18:57,078 : DEBUG - GeronimoLog.debug(66) | SELECT:
PickResponseChannel#9: FOUND match for NEW instance
mexRef={MyRoleMex#hqejbhcnphr3bc6es3hv5t [Client hqejbhcnphr3bc6es3hv5s]
calling {http://ifs}bpelService.testIt(...)}
2008-05-30 15:18:57,093 : ERROR - GeronimoLog.error(104) | Assignment
Fault: {
http://docs.oasis-open.org/wsbpel/2.0/process/executable}selectionFailure,lineNo=27,faultExplanation=R-Value<http://docs.oasis-open.org/wsbpel/2.0/process/executable%7DselectionFailure,lineNo=27,faultExplanation=R-Value>expression
"{OXPath10Expression $DataTOin.in/testXsd:param/testWsdl:zahl}"
did not select any nodes.
2008-05-30 15:18:57,093 : DEBUG - GeronimoLog.debug(66) | ProcessImpl
completed with fault '{
http://docs.oasis-open.org/wsbpel/2.0/process/executable}selectionFailure<http://docs.oasis-open.org/wsbpel/2.0/process/executable%7DselectionFailure>'
2008-05-30 15:18:57,093 : DEBUG - GeronimoLog.debug(66) | Processing an
async reply from service {http://ifs}bpelService
2008-05-30 15:18:57,171 : DEBUG - GeronimoLog.debug(66) | Received myrole
mex response callback
2008-05-30 15:18:57,171 : DEBUG - GeronimoLog.debug(66) | Handling
response for MEX {MyRoleMex#hqejbhcnphr3bc6es3hv5t [Client
hqejbhcnphr3bc6es3hv5s] calling {http://ifs}bpelService.testIt(...)}
2008-05-30 15:18:57,171 : DEBUG - GeronimoLog.debug(66) | Starting
transaction.
2008-05-30 15:18:57,218 : DEBUG - GeronimoLog.debug(66) | Fault response
message: {
http://docs.oasis-open.org/wsbpel/2.0/process/executable}selectionFailure<http://docs.oasis-open.org/wsbpel/2.0/process/executable%7DselectionFailure>
2008-05-30 15:18:57,218 : DEBUG - GeronimoLog.debug(66) | Returning fault:
<?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="
http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><soapenv:Fault><faultcode>soapenv:Server</faultcode><faultstring
xmlns:axis2ns7="http://docs.oasis-open.org/wsbpel/2.0/process/executable">axis2ns7:selectionFailure</faultstring><detail
/></soapenv:Fault></soapenv:Body></soapenv:Envelope>
2008-05-30 15:18:57,218 : DEBUG - GeronimoLog.debug(66) | Releasing mex
hqejbhcnphr3bc6es3hv5t
2008-05-30 15:18:57,218 : DEBUG - GeronimoLog.debug(66) | Comitting
transaction.
2008-05-30 15:18:57,218 : DEBUG - GeronimoLog.debug(66) | Reply for
xpath.{http://ifs}testIt
2008-05-30 15:18:57,218 : DEBUG - GeronimoLog.debug(66) | Reply message
<?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="
http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><soapenv:Fault><faultcode>soapenv:Server</faultcode><faultstring
xmlns:axis2ns7="http://docs.oasis-open.org/wsbpel/2.0/process/executable">axis2ns7:selectionFailure</faultstring><detail
/></soapenv:Fault></soapenv:Body></soapenv:Envelope>
#######################################
complete BPEL process
#######################################
<process name="xpathTest"
targetNamespace="http://initial/testbpel"
xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
xmlns:testWsdl="http://ifs">
<import location="bpelTest.wsdl"
namespace="http://ifs"
importType="http://schemas.xmlsoap.org/wsdl/" />
<partnerLinks>
<partnerLink name="testing" partnerLinkType="testWsdl:testingLT"
myRole="testService" />
</partnerLinks>
<variables>
<variable name="DataTOin" messageType="testWsdl:testItMsgIN" />
<variable name="DataTOout" messageType="testWsdl:testItMsgOUT" />
</variables>
<sequence>
<receive partnerLink="testing" portType="testWsdl:testingPT"
operation="testIt" variable="DataTOin" createInstance="yes">
</receive>
<assign name="assign1">
<copy>
<!-- I tried this without the namespaces, too -->
<from
xmlns:testXsd="http://ifs/xsd">$DataTOin.in/testXsd:param/testWsdl:zahl</from>
<to
xmlns:testXsd="http://ifs/xsd">$DataTOout.out/testXsd:param/testWsdl:zahl</to>
</copy>
</assign>
<reply partnerLink="testing" portType="testWsdl:testingPT"
operation="testIt" variable="DataTOout">
</reply>
</sequence>
</process>
#######################################
complete WSDL
#######################################
<wsdl:definitions
xmlns:pos="http://ifs"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"
xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
xmlns:ns0="http://ifs/xsd"
targetNamespace="http://ifs">
<wsdl:types>
<xs:schema xmlns:ns="http://ifs" attributeFormDefault="qualified"
elementFormDefault="qualified"
targetNamespace="http://ifs">
<xs:import namespace="http://ifs/xsd"
schemaLocation="dto.xsd" />
<xs:element name="doIt">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="param" nillable="true"
type="ns0:DTO"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="doItResponse">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="return" nillable="true"
type="ns0:DTO"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
</wsdl:types>
<wsdl:message name="testItMsgIN">
<wsdl:part name="in" element="pos:doIt"/>
</wsdl:message>
<wsdl:message name="testItMsgOUT">
<wsdl:part name="out" element="pos:doItResponse"/>
</wsdl:message>
<wsdl:portType name="testingPT">
<wsdl:operation name="testIt">
<wsdl:input message="pos:testItMsgIN" />
<wsdl:output message="pos:testItMsgOUT" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="bpelTestBinding" type="pos:testingPT">
<soap:binding style="document" transport="
http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="testIt">
<soap:operation soapAction="" style="document"/>
<wsdl:input>
<soap:body
namespace="http://ifs"
use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body
namespace="http://ifs"
use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="bpelService">
<wsdl:port name="testPort" binding="pos:bpelTestBinding">
<soap:address location="
http://localhost:8080/ode/processes/xpath"/>
</wsdl:port>
</wsdl:service>
<plnk:partnerLinkType name="testingLT">
<plnk:role name="testService" portType="pos:testingPT" />
</plnk:partnerLinkType>
</wsdl:definitions>
#######################################
dto.xsd
#######################################
<xs:schema xmlns:ax21="http://ifs/xsd"
attributeFormDefault="qualified"
elementFormDefault="qualified"
targetNamespace="http://ifs/xsd"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="DTO">
<xs:sequence>
<xs:element minOccurs="0" name="s1" nillable="true"
type="xs:string"/>
<xs:element minOccurs="0" name="zahl" type="xs:int"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
#######################################
request SOAP message
#######################################
<soapenv:Envelope xmlns:soapenv="
http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<ns2:doIt xmlns:ns2="http://ifs">
<ns2:param>
<ns1:s1 xmlns:ns1="http://ifs/xsd">Hallo, Hallo!!</ns1:s1>
<ns1:zahl xmlns:ns1="http://ifs/xsd">200</ns1:zahl>
</ns2:param>
</ns2:doIt>
</soapenv:Body>
</soapenv:Envelope>