描述如下:
public class TestBean1{
        private String content;
        public String getContent()
{
return content;
}
        public void setContent()
{
this.content=content;
}}
public class TestBean2{
public TestBean1 testBean1; public String getContent(TestBean1 testBean)
{
this.testBean1=testBean;
String content=testBean1.getContent();
return content;
}
public TestBean1 getTestBean1(String content)
{
TestBean1 tb = new TestBean1();
tb.setContent(content);

return tb;
}
}
现在把TestBean2使用axis发布,wsdl文件如下:
  <?xml version="1.0" encoding="UTF-8" ?> 
- <wsdl:definitions targetNamespace="http://localhost:8010/axis/services/TestBeanService" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://localhost:8010/axis/services/TestBeanService" xmlns:intf="http://localhost:8010/axis/services/TestBeanService" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns1="http://DefaultNamespace" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
- <!-- 
WSDL created by Apache Axis version: 1.4
Built on Apr 22, 2006 (06:55:48 PDT)  --> 
- <wsdl:types>
- <schema targetNamespace="http://DefaultNamespace" xmlns="http://www.w3.org/2001/XMLSchema">
  <import namespace="http://schemas.xmlsoap.org/soap/encoding/" /> 
- <complexType name="TestBean1">
- <sequence>
  <element name="content" nillable="true" type="xsd:string" /> 
  </sequence>
  </complexType>
  </schema>
  </wsdl:types>
- <wsdl:message name="getTestBean1Request">
  <wsdl:part name="in0" type="xsd:string" /> 
  </wsdl:message>
- <wsdl:message name="getContentRequest">
  <wsdl:part name="in0" type="tns1:TestBean1" /> 
  </wsdl:message>
- <wsdl:message name="getTestBean1Response">
  <wsdl:part name="getTestBean1Return" type="tns1:TestBean1" /> 
  </wsdl:message>
- <wsdl:message name="getContentResponse">
  <wsdl:part name="getContentReturn" type="xsd:string" /> 
  </wsdl:message>
- <wsdl:portType name="TestBean2">
- <wsdl:operation name="getContent" parameterOrder="in0">
  <wsdl:input message="impl:getContentRequest" name="getContentRequest" /> 
  <wsdl:output message="impl:getContentResponse" name="getContentResponse" /> 
  </wsdl:operation>
- <wsdl:operation name="getTestBean1" parameterOrder="in0">
  <wsdl:input message="impl:getTestBean1Request" name="getTestBean1Request" /> 
  <wsdl:output message="impl:getTestBean1Response" name="getTestBean1Response" /> 
  </wsdl:operation>
  </wsdl:portType>
- <wsdl:binding name="TestBeanServiceSoapBinding" type="impl:TestBean2">
  <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" /> 
- <wsdl:operation name="getContent">
  <wsdlsoap:operation soapAction="" /> 
- <wsdl:input name="getContentRequest">
  <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://DefaultNamespace" use="encoded" /> 
  </wsdl:input>
- <wsdl:output name="getContentResponse">
  <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost:8010/axis/services/TestBeanService" use="encoded" /> 
  </wsdl:output>
  </wsdl:operation>
- <wsdl:operation name="getTestBean1">
  <wsdlsoap:operation soapAction="" /> 
- <wsdl:input name="getTestBean1Request">
  <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://DefaultNamespace" use="encoded" /> 
  </wsdl:input>
- <wsdl:output name="getTestBean1Response">
  <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost:8010/axis/services/TestBeanService" use="encoded" /> 
  </wsdl:output>
  </wsdl:operation>
  </wsdl:binding>
- <wsdl:service name="TestBean2Service">
- <wsdl:port binding="impl:TestBeanServiceSoapBinding" name="TestBeanService">
  <wsdlsoap:address location="http://localhost:8010/axis/services/TestBeanService" /> 
  </wsdl:port>
  </wsdl:service>
  </wsdl:definitions>我在BPEL中要调用到TestBeanService这个服务,其中两个方法一个是输入为复杂类型,一个是返回为复杂类型,请问我在bpel中该怎样定义变量来处理这些复杂类型呢?谢谢!!