[jboss-user] [JBoss jBPM] - BPEL generate-artifacts error
frostp
do-not-reply at jboss.com
Tue Feb 27 13:09:51 EST 2007
Hi,
I am trying to simply make an external web service invocation from a BPEL script. I am basing the project on the HelloWorld example.
JbossAS-4.0.4.GA
JBPM-bpel-1.1.Beta3
jdk1.5.0_11
OK so i can successfully run:
ant deploy-definition
| ant generate-service
But when it comes to ant generate-artifacts I get the following output:
D:\development\jbpm-bpel-1.1.Beta3\examples\listadmin>ant generate-artifacts
| Buildfile: build.xml
|
| detect-wsgenerator:
|
| generate-artifacts:
|
| setup-wstools:
|
| call-wstools:
| [wstools] 17:15:39,957 ERROR JBossXSErrorHandler : JBossWS_com_ericsson_listadmindbservice_webservices25724.xsd[domain:http://www.w3.org/TR/xml-schema-1]::[key=src-resolve.4.2]::Message=src-resolve.4.2: Error resolving component 'java:ServiceListRef'. It was detected that'java:ServiceListRef' is in namespace 'java:com.ericsson.listManagement.models', but components from this namespace are not referenceable from schema document 'file:/C:/DOCUME~1/frostp/LOCALS~1/Temp/JBossWS_com_ericsson_listadmindbservice_webservices25724.xsd'. If this is the incorrect namespace, perhaps the prefix of 'java:ServiceListRef' needs to be changed. If this is the correct namespace, then an appropriate 'import' tag should be added to 'file:/C:/DOCUME~1/frostp/LOCALS~1/Temp/JBossWS_com_ericsson_listadmindbservice_webservices25724.xsd'.
| [move] Moving 1 file to D:\development\jbpm-bpel-1.1.Beta3\examples\listadmin\target\resources\web
|
| setup-wscompile:
|
| BUILD SUCCESSFUL
| Total time: 2 seconds
| D:\development\jbpm-bpel-1.1.Beta3\examples\listadmin>
I'm pretty sure the namespace for the complex "ServiceListRef"type is correct (well, I did create that webs ervice so it could be wrong)
How can I place an import into a temporary file?
I know that Ant says it has completed the task but when I run
ant deploy the javac compiler can not see the auto generated Greeter.class and moans, so it can not have worked.
My config looks thus:
bpel-applications.xml
<?xml version="1.0" encoding="UTF-8"?>
| <bpelApplication name="ListAdmin" xmlns="http://jbpm.org/bpel"
| xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
| xsi:schemaLocation="http://jbpm.org/bpel
| http://jbpm.org/bpel/bpel_application_1_0.xsd" >
|
| <!-- START frostp; added for external web service -->
| <serviceCatalogs>
| <!-- listing of locally published WSDL documents -->
| <urlCatalog contextUrl="http://localhost:8080/">
|
| <!-- published WSDL document of ticket issuer -->
| <wsdl location="ListAdminDBService/ListAdminDBServiceService?wsdl" />
| </urlCatalog>
| </serviceCatalogs>
| <!-- END frostp; added for external web service -->
|
| </bpelApplication>
bpel-definition.xml looks like:
<?xml version="1.0" encoding="UTF-8"?>
| <bpelDefinition location="listadmin.bpel" xmlns="http://jbpm.org/bpel"
| xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
| xsi:schemaLocation="http://jbpm.org/bpel
| http://jbpm.org/bpel/bpel_definition_1_0.xsd">
|
| <!-- makes WSDL interface elements available to the process -->
| <imports>
| <wsdl location="listadmin.wsdl" />
| <wsdl location="interfaces/ListAdminDBServiceService.wsdl" />
| </imports>
|
| </bpelDefinition>
listadmin.wsdl looks like:
<?xml version="1.0" encoding="UTF-8"?>
| <definitions targetNamespace="urn:samples:listadmin"
| xmlns="http://schemas.xmlsoap.org/wsdl/"
| xmlns:tns="urn:samples:listadmin"
| xmlns:s0="http://com/ericsson/listadmindbservice/webservices"
| xmlns:xsd="http://www.w3.org/2001/XMLSchema"
| xmlns:plt="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"
| xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
|
|
| <!-- Need to import the external file in order that we can see the definition of the external service -->
| <import namespace="http://com/ericsson/listadmindbservice/webservices" location="interfaces/ListAdminDBServiceService.wsdl" />
|
| <!-- START frostp describes the rel. between us and the DB access service -->
| <plt:partnerLinkType name="dbAccessPLT">
| <plt:role name="ListAdminDBService">
| <plt:portType name="s0:ListAdminDBService" />
| </plt:role>
| </plt:partnerLinkType>
| <!-- END frostp -->
|
| <!-- characterizes the relationship between the greeter and its caller -->
| <plt:partnerLinkType name="Greeter-Caller">
| <plt:role name="Greeter">
| <plt:portType name="tns:Greeter" />
| </plt:role>
| <!-- the Caller does not provide services to the Greeter,
| this is why we omit the "Caller" role -->
| </plt:partnerLinkType>
|
|
|
| <!-- carries the name of a person -->
| <message name="nameMessage">
| <part name="name" type="xsd:string" />
| </message>
|
| <!-- carries the greeting -->
| <message name="greetingMessage">
| <part name="greeting" type="xsd:string" />
| </message>
|
| <!-- describes the interface presented to callers -->
| <portType name="Greeter">
| <operation name="sayHello">
| <input message="tns:nameMessage" />
| <output message="tns:greetingMessage" />
| </operation>
| </portType>
|
| </definitions>
and finally, listadmin.bpel looks like:
<?xml version="1.0" encoding="UTF-8"?>
| <process name="ListAdmin" targetNamespace="urn:samples:listadmin"
| xmlns:s0="http://com/ericsson/listadmindbservice/webservices"
| xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
| xmlns:tns="urn:samples:listadmin"
| 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-process/
| http://schemas.xmlsoap.org/ws/2003/03/business-process/">
| <!-- xmlns:tns="http://jbpm.org/examples/listadmin" -->
|
| <partnerLinks>
| <!-- START frostp -->
| <partnerLink name="dbAccessPL" partnerLinkType="tns:dbAccessPLT" partnerRole="ListAdminDBService" />
| <!-- END frostp -->
|
| <!-- establishes the relationship with the caller agent -->
| <partnerLink name="caller" partnerLinkType="tns:Greeter-Caller"
| myRole="Greeter" />
| </partnerLinks>
|
| <variables>
| <!-- holds the incoming message -->
| <variable name="request" messageType="tns:nameMessage" />
| <!-- holds the outgoing message -->
| <variable name="response" messageType="tns:greetingMessage" />
|
| <!-- START frostp; Variables for DB access routines -->
| <variable name="dbRequest" messageType="s0:getServiceList" />
| <variable name="dbResponse" messageType="s0:getServiceListResponse" />
| <!-- START frostp; Variables for DB access routines -->
| </variables>
|
| <sequence>
|
| <!-- receive the name of a person -->
| <receive operation="sayHello" partnerLink="caller" portType="tns:Greeter"
| variable="request" createInstance="yes" />
|
| <!-- compose a greeting phrase -->
| <assign>
| <copy>
| <from expression="concat('Hello, ',
| bpel:getVariableData('request', 'name'), '!')" />
| <to variable="response" part="greeting" />
| </copy>
| </assign>
|
| <!-- START frostp; Call DB service -->
| <invoke operation="getServiceList" partnerLink="dbAccessPL"
| portType="s0:ListAdminDBService" inputVariable="dbRequest"
| outputVariable="dbResponse">
| </invoke>
| <!-- END frostp -->
|
|
|
| <!-- reply with the greeting -->
| <reply operation="sayHello" partnerLink="caller" portType="tns:Greeter"
| variable="response" />
|
| </sequence>
| </process>
|
Oh yes, it might help to see the external WSDL file I've imported:
| <?xml version='1.0' encoding='UTF-8'?>
| <definitions name="ListAdminDBServiceServiceDefinitions" targetNamespace="http://com/ericsson/listadmindbservice/webservices" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:s0="http://com/ericsson/listadmindbservice/webservices" xmlns:s1="http://schemas.xmlsoap.org/wsdl/soap/">
| <types>
| <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://com/ericsson/listadmindbservice/webservices" xmlns:xs="http://www.w3.org/2001/XMLSchema">
| <xs:element name="updateListEntry">
| <xs:complexType>
| <xs:sequence>
| <xs:element name="slr" type="java:ServiceListRef" xmlns:java="java:com.ericsson.listManagement.models"/>
| <xs:element name="contact" type="java:Contact" xmlns:java="java:com.ericsson.listManagement.models"/>
| <xs:element name="newContact" type="java:Contact" xmlns:java="java:com.ericsson.listManagement.models"/>
| </xs:sequence>
| </xs:complexType>
| </xs:element>
| <xs:element name="updateListEntryResponse">
| <xs:complexType>
| <xs:sequence>
| <xs:element name="return" type="xs:boolean"/>
| </xs:sequence>
| </xs:complexType>
| </xs:element>
| <xs:element name="deleteServiceList">
| <xs:complexType>
| <xs:sequence>
| <xs:element name="slr" type="java:ServiceListRef" xmlns:java="java:com.ericsson.listManagement.models"/>
| </xs:sequence>
| </xs:complexType>
| </xs:element>
| <xs:element name="deleteServiceListResponse">
| <xs:complexType>
| <xs:sequence>
| <xs:element name="return" type="xs:boolean"/>
| </xs:sequence>
| </xs:complexType>
| </xs:element>
| <xs:element name="addListEntry">
| <xs:complexType>
| <xs:sequence>
| <xs:element name="slr" type="java:ServiceListRef" xmlns:java="java:com.ericsson.listManagement.models"/>
| <xs:element name="contact" type="java:Contact" xmlns:java="java:com.ericsson.listManagement.models"/>
| </xs:sequence>
| </xs:complexType>
| </xs:element>
| <xs:element name="addListEntryResponse">
| <xs:complexType>
| <xs:sequence>
| <xs:element name="return" type="xs:boolean"/>
| </xs:sequence>
| </xs:complexType>
| </xs:element>
| <xs:element name="getListEntry">
| <xs:complexType>
| <xs:sequence>
| <xs:element name="slr" type="java:ServiceListRef" xmlns:java="java:com.ericsson.listManagement.models"/>
| <xs:element name="userURI" type="xs:string"/>
| </xs:sequence>
| </xs:complexType>
| </xs:element>
| <xs:element name="getListEntryResponse">
| <xs:complexType>
| <xs:sequence>
| <xs:element name="return" type="java:Contact" xmlns:java="java:com.ericsson.listManagement.models"/>
| </xs:sequence>
| </xs:complexType>
| </xs:element>
| <xs:element name="deleteListEntry">
| <xs:complexType>
| <xs:sequence>
| <xs:element name="slr" type="java:ServiceListRef" xmlns:java="java:com.ericsson.listManagement.models"/>
| <xs:element name="userURI" type="xs:string"/>
| </xs:sequence>
| </xs:complexType>
| </xs:element>
| <xs:element name="deleteListEntryResponse">
| <xs:complexType>
| <xs:sequence>
| <xs:element name="return" type="xs:boolean"/>
| </xs:sequence>
| </xs:complexType>
| </xs:element>
| <xs:element name="getServiceList">
| <xs:complexType>
| <xs:sequence>
| <xs:element name="slr" type="java:ServiceListRef" xmlns:java="java:com.ericsson.listManagement.models"/>
| </xs:sequence>
| </xs:complexType>
| </xs:element>
| <xs:element name="getServiceListResponse">
| <xs:complexType>
| <xs:sequence>
| <xs:element name="return" type="java:ArrayOfContact_literal" xmlns:java="java:com.ericsson.listManagement.models"/>
| </xs:sequence>
| </xs:complexType>
| </xs:element>
| </xs:schema>
| <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="java:com.ericsson.listManagement.models" xmlns:xs="http://www.w3.org/2001/XMLSchema">
| <xs:complexType name="Contact">
| <xs:sequence>
| <xs:element minOccurs="1" name="Priority" nillable="false" type="xs:int"/>
| <xs:element minOccurs="1" name="User" nillable="true" type="xs:string"/>
| <xs:element minOccurs="1" name="UserURI" nillable="true" type="xs:string"/>
| </xs:sequence>
| </xs:complexType>
| <xs:complexType name="ServiceListRef">
| <xs:sequence>
| <xs:element minOccurs="1" name="Service" nillable="true" type="xs:string"/>
| <xs:element minOccurs="1" name="Subscriber" nillable="true" type="xs:string"/>
| </xs:sequence>
| </xs:complexType>
| <xs:complexType name="ArrayOfContact_literal">
| <xs:sequence>
| <xs:element maxOccurs="unbounded" minOccurs="0" name="Contact" nillable="true" type="java:Contact" xmlns:java="java:com.ericsson.listManagement.models"/>
| </xs:sequence>
| </xs:complexType>
| <xs:element name="ArrayOfContact_literal" type="java:ArrayOfContact_literal" xmlns:java="java:com.ericsson.listManagement.models"/>
| </xs:schema>
| </types>
| <message name="updateListEntry">
| <part element="s0:updateListEntry" name="parameters"/>
| </message>
| <message name="updateListEntryResponse">
| <part element="s0:updateListEntryResponse" name="parameters"/>
| </message>
| <message name="deleteServiceList">
| <part element="s0:deleteServiceList" name="parameters"/>
| </message>
| <message name="deleteServiceListResponse">
| <part element="s0:deleteServiceListResponse" name="parameters"/>
| </message>
| <message name="addListEntry">
| <part element="s0:addListEntry" name="parameters"/>
| </message>
| <message name="addListEntryResponse">
| <part element="s0:addListEntryResponse" name="parameters"/>
| </message>
| <message name="getListEntry">
| <part element="s0:getListEntry" name="parameters"/>
| </message>
| <message name="getListEntryResponse">
| <part element="s0:getListEntryResponse" name="parameters"/>
| </message>
| <message name="deleteListEntry">
| <part element="s0:deleteListEntry" name="parameters"/>
| </message>
| <message name="deleteListEntryResponse">
| <part element="s0:deleteListEntryResponse" name="parameters"/>
| </message>
| <message name="getServiceList">
| <part element="s0:getServiceList" name="parameters"/>
| </message>
| <message name="getServiceListResponse">
| <part element="s0:getServiceListResponse" name="parameters"/>
| </message>
| <portType name="ListAdminDBService">
| <operation name="updateListEntry" parameterOrder="parameters">
| <input message="s0:updateListEntry"/>
| <output message="s0:updateListEntryResponse"/>
| </operation>
| <operation name="deleteServiceList" parameterOrder="parameters">
| <input message="s0:deleteServiceList"/>
| <output message="s0:deleteServiceListResponse"/>
| </operation>
| <operation name="addListEntry" parameterOrder="parameters">
| <input message="s0:addListEntry"/>
| <output message="s0:addListEntryResponse"/>
| </operation>
| <operation name="getListEntry" parameterOrder="parameters">
| <input message="s0:getListEntry"/>
| <output message="s0:getListEntryResponse"/>
| </operation>
| <operation name="deleteListEntry" parameterOrder="parameters">
| <input message="s0:deleteListEntry"/>
| <output message="s0:deleteListEntryResponse"/>
| </operation>
| <operation name="getServiceList" parameterOrder="parameters">
| <input message="s0:getServiceList"/>
| <output message="s0:getServiceListResponse"/>
| </operation>
| </portType>
| <binding name="ListAdminDBServiceServiceSoapBinding" type="s0:ListAdminDBService">
| <s1:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
| <operation name="updateListEntry">
| <s1:operation soapAction="" style="document"/>
| <input>
| <s1:body parts="parameters" use="literal"/>
| </input>
| <output>
| <s1:body parts="parameters" use="literal"/>
| </output>
| </operation>
| <operation name="deleteServiceList">
| <s1:operation soapAction="" style="document"/>
| <input>
| <s1:body parts="parameters" use="literal"/>
| </input>
| <output>
| <s1:body parts="parameters" use="literal"/>
| </output>
| </operation>
| <operation name="addListEntry">
| <s1:operation soapAction="" style="document"/>
| <input>
| <s1:body parts="parameters" use="literal"/>
| </input>
| <output>
| <s1:body parts="parameters" use="literal"/>
| </output>
| </operation>
| <operation name="getListEntry">
| <s1:operation soapAction="" style="document"/>
| <input>
| <s1:body parts="parameters" use="literal"/>
| </input>
| <output>
| <s1:body parts="parameters" use="literal"/>
| </output>
| </operation>
| <operation name="deleteListEntry">
| <s1:operation soapAction="" style="document"/>
| <input>
| <s1:body parts="parameters" use="literal"/>
| </input>
| <output>
| <s1:body parts="parameters" use="literal"/>
| </output>
| </operation>
| <operation name="getServiceList">
| <s1:operation soapAction="" style="document"/>
| <input>
| <s1:body parts="parameters" use="literal"/>
| </input>
| <output>
| <s1:body parts="parameters" use="literal"/>
| </output>
| </operation>
| </binding>
| <service name="ListAdminDBServiceService">
| <port binding="s0:ListAdminDBServiceServiceSoapBinding" name="ListAdminDBServiceSoapPort">
| <s1:address location="http://localhost:7001/ListAdminDBService/ListAdminDBService"/>
| </port>
| </service>
| </definitions>
Any clues anybody?
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4023207#4023207
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4023207
More information about the jboss-user
mailing list