I am using the Web Service from the book Activiti in Action (book-sales-app), modified a little bit adding two parameters more in input, and it is correctly running on address http://localhost:8080/book-sales-app/services/address?wsdl.
The WSDL is the following:
<wsdl:definitions name="AddressServiceService" targetNamespace="http://ws.chapter11.bpmnwithactiviti.org/"> <wsdl:types> <xs:schema elementFormDefault="unqualified" targetNamespace="http://ws.chapter11.bpmnwithactiviti.org/" version="1.0"> <xs:element name="findCustomerAddress" type="tns:findCustomerAddress"/> <xs:element name="findCustomerAddressResponse" type="tns:findCustomerAddressResponse"/> <xs:complexType name="findCustomerAddress"> <xs:sequence> <xs:element minOccurs="0" name="customerName" type="xs:string"/> <xs:element minOccurs="0" name="load" type="xs:string"/> <xs:element minOccurs="0" name="duration" type="xs:string"/> </xs:sequence> </xs:complexType> <xs:complexType name="findCustomerAddressResponse"> <xs:sequence> <xs:element minOccurs="0" name="address" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:schema> </wsdl:types> <wsdl:message name="findCustomerAddress"> <wsdlart element="tns:findCustomerAddress" name="parameters"></wsdlart> </wsdl:message> <wsdl:message name="findCustomerAddressResponse"> <wsdlart element="tns:findCustomerAddressResponse" name="parameters"></wsdlart> </wsdl:message> <wsdlortType name="AddressService"> <wsdlperation name="findCustomerAddress"> <wsdl:input message="tns:findCustomerAddress" name="findCustomerAddress"></wsdl:input> <wsdlutput message="tns:findCustomerAddressResponse" name="findCustomerAddressResponse"></wsdlutput> </wsdlperation> </wsdlortType> <wsdl:binding name="AddressServiceServiceSoapBinding" type="tns:AddressService"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> <wsdlperation name="findCustomerAddress"> <soapperation soapAction="" style="document"/> <wsdl:input name="findCustomerAddress"> <soap:body use="literal"/> </wsdl:input> <wsdlutput name="findCustomerAddressResponse"> <soap:body use="literal"/> </wsdlutput> </wsdlperation> </wsdl:binding> <wsdl:service name="AddressServiceService"> <wsdlort binding="tns:AddressServiceServiceSoapBinding" name="AddressServicePort"> <soap:address location="http://localhost:8080/book-sales-app/services/address"/> </wsdlort> </wsdl:service></wsdl:definitions>
I am trying to call it using this unit test GitHub - ajeje93/activiti-unit-test-webservice
If I called it when it got only one input everything worked, but noew every time that I call it I get the error:
test(org.activiti.MyUnitTest): cvc-id.1: There is no ID/IDREF binding for IDREF "loadVar".test(org.activiti.MyUnitTest): no processes deployed with key 'customer'
What can I do to solve this problem?
I soved by myself. I missed two itemDefinition in the process definition:
<itemDefinition id="loadVar" structureRef="string" /> <itemDefinition id="durationVar" structureRef="string" />