以ODE为bpel引擎部署带有多个伙伴链接的小项目出现部署异常高手进来看下

tongyiwzh 2010-02-24 05:21:37
本人最近在研究学习bpel方面的知识,根据网上的简单demo,可以部署bpel的简单的helloworld测试项目。本人用eclipse3.5.1来开发bpel程序,以Tomcat6.0为服务器,用ODE作为bpel项目的引擎,在eclipse中创建bpel文件时,同时会创建一个关联的wsdl文件,目前我想在该bpel项目内添加两个wsdl文件,通过bpel的伙伴链接功能引用该两个wsdl文件里的服务。在bpel文件里有该两个wsdl文件的import语法时,部署不会出现异常,但是一旦我添加了伙伴链接代码,再次部署就会出现异常。现将部分代码贴出来:

部署不报异常的代码:
<bpel:process name="CaculatorBpel"
targetNamespace="http://caculator.sample.bpel.com/client"
suppressJoinFailure="yes"
xmlns:tns="http://caculator.sample.bpel.com/client"
xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
xmlns:ns2="http://sub.caculator.sample.bpel.com/"
xmlns:ns1="http://add.caculator.sample.bpel.com/"
>

<bpel:import namespace="http://add.caculator.sample.bpel.com/" location="AddService.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"></bpel:import>
<bpel:import namespace="http://sub.caculator.sample.bpel.com/" location="SubstractService.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"></bpel:import>
<bpel:import location="CaculatorBpelArtifacts.wsdl" namespace="http://caculator.sample.bpel.com/client"
importType="http://schemas.xmlsoap.org/wsdl/" />

<bpel:partnerLinks>
<!-- The 'client' role represents the requester of this service. -->
<bpel:partnerLink myRole="CaculatorBpelProvider" name="client" partnerLinkType="tns:CaculatorBpel"/>

</bpel:partnerLinks>
。。。。。


下面是报异常的部分代码:

<bpel:process name="CaculatorBpel"
targetNamespace="http://caculator.sample.bpel.com/client"
suppressJoinFailure="yes"
xmlns:tns="http://caculator.sample.bpel.com/client"
xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
xmlns:ns2="http://sub.caculator.sample.bpel.com/"
xmlns:ns1="http://add.caculator.sample.bpel.com/"
>

<bpel:import namespace="http://add.caculator.sample.bpel.com/" location="AddService.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"></bpel:import>
<bpel:import namespace="http://sub.caculator.sample.bpel.com/" location="SubstractService.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"></bpel:import>
<bpel:import location="CaculatorBpelArtifacts.wsdl" namespace="http://caculator.sample.bpel.com/client"
importType="http://schemas.xmlsoap.org/wsdl/" />


<bpel:partnerLinks>
<!-- The 'client' role represents the requester of this service. -->
<bpel:partnerLink myRole="CaculatorBpelProvider" name="client" partnerLinkType="tns:CaculatorBpel"/>
<bpel:partnerLink name="AddLink" partnerLinkType="ns1:AddLink" myRole="AddProvider"></bpel:partnerLink>
<bpel:partnerLink name="SubLink" partnerLinkType="ns2:SubstractLink" myRole="SubstractProvider"></bpel:partnerLink>


</bpel:partnerLinks>
。。。。


报出的异常如下:
INFO - GeronimoLog.info(79) | Unregistered process {http://caculator.sample.bpel.com/client}CaculatorBpel-31.
ERROR - GeronimoLog.error(108) | Deployment of CaculatorBPEL failed, aborting for now.
org.apache.ode.bpel.iapi.ContextException: Deployment failed within the engine.
at org.apache.ode.store.ProcessStoreImpl.deploy(ProcessStoreImpl.java:308)
at org.apache.ode.axis2.deploy.DeploymentPoller.check(DeploymentPoller.java:144)
at org.apache.ode.axis2.deploy.DeploymentPoller.access$300(DeploymentPoller.java:55)
at org.apache.ode.axis2.deploy.DeploymentPoller$PollingThread.run(DeploymentPoller.java:188)
Caused by: java.lang.IllegalArgumentException: No service name for myRole plink PartnerLink
at org.apache.ode.bpel.engine.ODEProcess.setRoles(ODEProcess.java:666)
at org.apache.ode.bpel.engine.ODEProcess.access$1000(ODEProcess.java:101)
at org.apache.ode.bpel.engine.ODEProcess$HydrationLatch.doHydrate(ODEProcess.java:1255)
at org.apache.ode.bpel.engine.ODEProcess$HydrationLatch.access$200(ODEProcess.java:1215)
at org.apache.ode.bpel.engine.ODEProcess$HydrationLatch$2.run(ODEProcess.java:1226)
at org.apache.ode.bpel.engine.NStateLatch.latch(NStateLatch.java:89)
at org.apache.ode.bpel.engine.ODEProcess.hydrate(ODEProcess.java:847)
at org.apache.ode.bpel.engine.BpelServerImpl.register(BpelServerImpl.java:383)
at org.apache.ode.axis2.ODEServer.handleEvent(ODEServer.java:626)
at org.apache.ode.axis2.ODEServer.access$100(ODEServer.java:91)
at org.apache.ode.axis2.ODEServer$ProcessStoreListenerImpl.onProcessStoreEvent(ODEServer.java:613)
at org.apache.ode.store.ProcessStoreImpl.fireEvent(ProcessStoreImpl.java:517)
at org.apache.ode.store.ProcessStoreImpl.fireStateChange(ProcessStoreImpl.java:523)
at org.apache.ode.store.ProcessStoreImpl.deploy(ProcessStoreImpl.java:301)
... 3 more


希望高手指点下。本人qq号码:371319819,如能qq指导,本人感激不尽。谢谢!
...全文
154 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
jinniuyihao5 2012-03-11
  • 打赏
  • 举报
回复
恩,好,

81,114

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧