I'm trying to produce a demo using the bpe service engine and I'm
encuntering a lot problems due mainly to my ignorance about BPEL and
lack of documentation of the ode project (at least on apache I didn'
find anything it seems that even the code is not online yet) and the bpe
binding component.
Do you think that the bpe service engine in mature enough to produce a
demo since it has recently sustituted the pxe engine?
I've understood that I need a .bpel that represents the process file and
a .wsdl with the same name that represents the process external
interface. I attach them both.
When I deploy the su I get the following error
<----------- error ----------------->
Retrieving document at 'doubleecho'.
Mar 28, 2006 5:50:06 PM org.apache.ode.bpe.util.BPException log
SEVERE: [DoubleEchoProcess] message type im:EchoResponse not found. Make
sure the WSDL has been imported and namespaces have been set up
consistently.
org.apache.ode.bpe.deployment.bpel.DeploymentException:
[DoubleEchoProcess] message type im:EchoResponse not found. Make sure
the WSDL has been imported and namespaces have been set up consistently.
        at
org.apache.ode.bpe.deployment.bpel.BPELUtil.throwNewException(BPELUtil.java:45)
        at
org.apache.ode.bpe.deployment.bpel.BPELWSDLVariable.<init>(BPELWSDLVariable.java:65)
        at
org.apache.ode.bpe.deployment.bpel.BPELRepositoryHandler.buildVariable(BPELRepositoryHandler.java:302)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at
org.apache.ode.bpe.deployment.bpel.BPELSAXHandler.startElement(BPELSAXHandler.java:105)
        at
org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
        at
org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown
Source)
        at
org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown
Source)
        at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl
$FragmentContentDispatcher.dispatch(Unknown Source)
        at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown 
Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown
Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown
Source)
        at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
        at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown
Source)
        at org.apache.xerces.jaxp.SAXParserImpl
$JAXPSAXParser.parse(Unknown Source)
        at javax.xml.parsers.SAXParser.parse(SAXParser.java:375)
        at
org.apache.ode.bpe.deployment.bpel.BPELParser.parseBPEL(BPELParser.java:95)
        at
org.apache.ode.bpe.deployment.bpel.BPELDeploy.deployJar(BPELDeploy.java:177)
        at
org.apache.ode.bpe.bped.unmanaged.BPELDeployerSLImpl.loadDefinition(BPELDeployerSLImpl.java:78)
        at
org.apache.servicemix.bpe.BPEDeployer.deploy(BPEDeployer.java:84)
        at
org.apache.servicemix.common.BaseServiceUnitManager.doDeploy(BaseServiceUnitManager.java:87)
        at
org.apache.servicemix.common.BaseServiceUnitManager.deploy(BaseServiceUnitManager.java:68)
        at
org.apache.servicemix.jbi.framework.DeploymentService.deployServiceAssembly(DeploymentService.java:526)
        at
org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(AutoDeploymentService.java:257)
        at org.apache.servicemix.jbi.framework.AutoDeploymentService
$2.run(AutoDeploymentService.java:507)
        at
org.apache.geronimo.connector.work.WorkerContext.run(WorkerContext.java:291)
        at EDU.oswego.cs.dl.util.concurrent.PooledExecutor
$Worker.run(Unknown Source)
        at java.lang.Thread.run(Thread.java:595)
[Fatal Error] :1:1: Content is not allowed in prolog.
<---------- error end ----------------->

notice that the bpe component seem not to use commons logging. Anyway I
understand that it does not find im:EchoResponse, which should be
visible if the .wsdl had been loaded correctly. If I delete the variable
statement the su get deployed and it exposes the wsdl correctly. So I
guess that the bpe engine doesn't see the .wsdl while the binding
component does. Perhaps the log: Retrieving document at 'doubleecho'.
means that the bpe engine is trying to load doubleecho from .? relative
to what? and how did it decided to look for doubleecho?

In synthesys:
1. how can I get more log from bpe?
2. how does bpe look for the correspondig wsdl given a .bpel?

thanks
Raffaele 
<?xml version="1.0" encoding="UTF-8"?>
<bpel:process name="DoubleEchoProcess" suppressJoinFailure="yes"
	targetNamespace="http://it.imolinfo.demo.process";
	xmlns:tns="http://it.imolinfo.demo.process";
	xmlns:bpel="http://schemas.xmlsoap.org/ws/2003/03/business-process/";
	xmlns:xsd="http://www.w3.org/2001/XMLSchema";
	xmlns:im="http:/it.imolinfo.demo"
	xmlns:typens="http:/it.imolinfo.demo.types"
	xmlns:corba="http://it.imolinfo.Jbi4Corba.test.webservice.generator";
	xmlns:jsr181="urn:jsr181"
	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/";>
	<!--<bpel:partnerLinks>
		<bpel:partnerLink name="doubleEchoing"
			partnerLinkType="im:DoubleEchoingLT" myRole="DoubleEchoService" />
	</bpel:partnerLinks>-->
	<!--<partnerLink name="invoicing" partnerLinkType="lns:invoicingLT"
		myRole="invoiceRequester" partnerRole="invoiceService" />
		<partnerLink name="shipping" partnerLinkType="lns:shippingLT"
		myRole="shippingRequester" partnerRole="shippingService" />
		<partnerLink name="scheduling" partnerLinkType="lns:schedulingLT"
		partnerRole="schedulingService" />-->
	<bpel:variables>
		<bpel:variable name="response" messageType="im:EchoResponse" />
		<bpel:variable name="request" messageType="im:EchoRequest" />
		</bpel:variables>
	<bpel:sequence>
		<!-- <bpel:receive name="request" partnerLink="DouleEchoRequest"
			portType="im:DoubleEcho" operation="EchoOperation" variable="request"
			createInstance="yes">
			</bpel:receive>-->
	</bpel:sequence>
</bpel:process>
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";
	xmlns:tns="http://it.imolinfo.demo";
	xmlns:typens="http://it.imolinfo.demo.types";
	xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";
	xmlns:xsd="http://www.w3.org/2001/XMLSchema"; name="DoubleEcho"
	targetNamespace="http://it.imolinfo.demo";>
	<wsdl:types>
		<xsd:schema targetNamespace="http://it.imolinfo.demo.types";>
			<xsd:element name="EchoResponse" type="xsd:string" />
			<xsd:complexType name="EchoRequest">
				<xsd:attribute name="msg1" type="xsd:string" />
				<xsd:attribute name="msg2" type="xsd:string" />
			</xsd:complexType>
		</xsd:schema>
	</wsdl:types>
	<wsdl:message name="EchoResponse">
		<wsdl:part type="typens:EchoResponse" name="payload" />
	</wsdl:message>
	<wsdl:message name="EchoRequest">
		<wsdl:part type="typens:EchoRequest" name="payload" />
	</wsdl:message>
	<wsdl:portType name="DoubleEcho">
		<wsdl:operation name="EchoOperation">
			<wsdl:input message="tns:EchoRequest" />
			<wsdl:output message="tns:EchoResponse" />
		</wsdl:operation>
	</wsdl:portType>
	<wsdl:binding name="DoubleEchoBinding" type="tns:DoubleEcho">
		<wsdl:operation name="EchoOperation"></wsdl:operation>
	</wsdl:binding>
	<wsdl:service name="DoubleEcho">
		<wsdl:port binding="tns:DoubleEchoBinding" name="DoubleEchoPort">
		</wsdl:port>
	</wsdl:service>
</wsdl:definitions>

Reply via email to