Eclipse 使用BPEL+Apache Ode(调用.Net asmx)问题调用外部web方法

Eclipse 使用BPEL+Apache Ode(调用.Net asmx)问题调用外部web方法,eclipse,bpel,webmethods,apache-ode,Eclipse,Bpel,Webmethods,Apache Ode,预信息: 我正在学习使用web方法SWM的编排。我已经成功地完成了有关assings、调用web方法和BPEL中的一些并行处理的课程。我使用EclipseIndigo3.7.1和BPEL插件,使用Tomcat7服务器和ApacheODE作为编排基础。另一方面,我需要学习调用在Mono.Net平台上编写的安全WMs 现在: 现在调用任何web方法都有问题。我已经做了: 1通过Mono.Net-works运行的Web方法,可以通过浏览器进行测试http://localhost:8081/hwws.a

预信息: 我正在学习使用web方法SWM的编排。我已经成功地完成了有关assings、调用web方法和BPEL中的一些并行处理的课程。我使用EclipseIndigo3.7.1和BPEL插件,使用Tomcat7服务器和ApacheODE作为编排基础。另一方面,我需要学习调用在Mono.Net平台上编写的安全WMs

现在: 现在调用任何web方法都有问题。我已经做了: 1通过Mono.Net-works运行的Web方法,可以通过浏览器进行测试http://localhost:8081/hwws.asmx 使用Eclipse工具Web Services Explorer,它可以正常工作。 2我的BPEL仅通过SOAP端口调用此.Net web方法。 3在其他工作岗位,我使用Visual Studio提供.Net服务。也有错误,如果需要的话,我会稍后发短信

问题:我在调用时出错

屏幕: 1.net WS-HWhelloWorld http://photo-hosting.winsoftmagic.com/1/s4nbwdsqib.jpg的浏览器测试 2.NETWS-HW的Eclipse测试 我犯了3个错误

错误列表:

18:15:25294警告外部服务故障响应:故障类型=未知 soap:客户端无法反序列化soap消息 18:15:25376调用期间错误调用失败: 18:15:25382信息BpelRuntimeContextImpl活动恢复:注册活动11,失败原因:在通道21上 之后会出现超时错误。我已经花了一周的时间来解决这个问题,用我能想到的所有方法来搜索

2012年3月12日编辑: 现在使用mono WS进行测试是有原因的。 我试过从互联网上呼叫WS,它给出的错误与我在工作现场遇到的错误相同:

14:25:16177调用期间错误[INVOKE]失败:发送消息mex={PartnerRoleMexhqejbhcnphr747jefui9ic[PID]时出错{http://wsaspx.tns/}inetWS-24]调用org.apache.ode.bpel.epr。WSAEndpoint@1e3a4c7.checkText...Status ASYNC}:传入消息的输入流为空。 14:25:16178信息[BpelRuntimeContextImpl]活动报告:注册活动11,失败原因:发送消息mex={PartnerRoleMexhqejbhcnphr747jefui9ic[PID]时出错{http://wsaspx.tns/}inetWS-24]调用org.apache.ode.bpel.epr。WSAEndpoint@1e3a4c7.checkText...Status ASYNC}:传入消息的输入流为空。21频道 同时,该服务可以从所有测试表单中工作

编辑:16.03.2012 我的mono方法在我不理解的情况下停止了工作,就像它开始时一样。TcpMon-1.1.jar再次显示这样的消息:

实际上,我遇到了三个错误之一:无法反序列化,传入消息的输入流为null,甚至昨天出现了错误411:P.s.出现了第四个错误,没有套接字连接,但所有错误都消失了

我的主要目标是ssl+授权.net服务-如果您有示例,我将不胜感激。
谢谢大家!很高兴看到您的帮助:

多亏了大家,测试soap主体表明它是好的,问题出在标题部分,在xml文本的xml长度之前有一些奇怪的块和数字,在xml结束之后是0。我刚刚设置了http.request.chunk=false,现在它在我的所有测试中都可以工作了。为此,从下载sample.endpoint,将其重命名为bpel name MonoCaller.bpel=>MonoCaller.endpoint。它已经注释了chunked的字符串。还添加了类似http.default headers.authorization=Basic的内容,用于授权目的,现在也可以使用了!:-]

多亏了大家,对soap主体的测试表明它是好的,问题出在标题部分,在xml文本的xml长度之前有一些奇怪的块和数字,在xml结束之后有0。我刚刚设置了http.request.chunk=false,现在它在我的所有测试中都可以工作了。为此,从下载sample.endpoint,将其重命名为bpel name MonoCaller.bpel=>MonoCaller.endpoint。它已经注释了chunked的字符串。还添加了类似http.default headers.authorization=Basic的内容,用于授权目的,现在也可以使用了!:-]

同样的错误发生在我身上,问题出在web服务本身,我有一个空的构造函数加上导致问题的方法,解决方法是删除构造函数。

同样的错误发生在我身上,问题出在web服务本身,我有一个空的构造函数加上导致问题的方法,解决方法是删除构造函数。

您看到服务端有任何错误吗?你可以截取你可以使用从ODE发送到Mono服务的消息,并检查它是否正确。您可以使用来使用截获的消息测试Web服务。您还可以附加在中部分可见的请求xml及其架构吗?您请求deploy.xml吗?这里是图形+文本视图谢谢您的回答!由于某种原因,它今天起作用了,没有明显的变化。关于TcpMon-1.1.jar——我已经使用来自issues post的manifestwith命令重新编译了它,这样它就可以工作了,但是它没有得到任何消息。我试过用端口变量。关于进球-
现在需要在主机上执行,问题似乎是Mono服务的预期soap消息不是从ODE发送的。为了找到从ODE到Mono服务的SOAP消息的问题,您需要使用TCPMon截获该消息。然后可以使用SOAPUI根据Mono服务测试消息。建议对Web Service Explorer使用SOAPUI,因为SOAPUI显示原始SOAP消息,并且易于故障排除。您看到服务端有任何错误吗?你可以截取你可以使用从ODE发送到Mono服务的消息,并检查它是否正确。您可以使用来使用截获的消息测试Web服务。您还可以附加在中部分可见的请求xml及其架构吗?您请求deploy.xml吗?这里是图形+文本视图谢谢您的回答!由于某种原因,它今天起作用了,没有明显的变化。关于TcpMon-1.1.jar——我已经使用来自issues post的manifestwith命令重新编译了它,这样它就可以工作了,但是它没有得到任何消息。我试过用端口变量。关于目标-现在需要在主机上完成。问题似乎是来自Mono服务的预期soap消息不是从ODE发送的。为了找到从ODE到Mono服务的SOAP消息的问题,您需要使用TCPMon截获该消息。然后可以使用SOAPUI根据Mono服务测试消息。建议对Web Service Explorer使用SOAPUI,因为SOAPUI显示原始SOAP消息,并且易于故障排除。
POST /hwws.asmx HTTP/1.1
Content-Type: text/xml; charset=UTF-8
SOAPAction: "http://hwws.tps/HelloWorld"
User-Agent: Axis2
Host: localhost:8092
Transfer-Encoding: chunked <--- EDITED: REASON OF NOT WORKING ----

31c
<?xml version='1.0' encoding='UTF-8'?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header>
<addr:To xmlns:addr="http://www.w3.org/2005/08/addressing">http://localhost:8092/hwws.asmx</addr:To>
<addr:Action xmlns:addr="http://www.w3.org/2005/08/addressing">http://hwws.tps/HelloWorld</addr:Action>
<addr:ReplyTo xmlns:addr="http://www.w3.org/2005/08/addressing"><addr:Address>http://www.w3.org/2005/08/addressing/anonymous</addr:Address></addr:ReplyTo>
<addr:MessageID xmlns:addr="http://www.w3.org/2005/08/addressing">uuid:hqejbhcnphr74k7fapcntd</addr:MessageID>
</soapenv:Header>
<soapenv:Body><HelloWorld xmlns="http://hwws.tps/">
<s0:st xmlns:s0="http://hwws.tps/">My test message</s0:st>
</HelloWorld></soapenv:Body></soapenv:Envelope>
0
HTTP/1.0 500 Internal Server Error
Date: Fri, 16 Mar 2012 08:01:50 GMT
Server: Mono.WebServer2/0.4.0.0 Unix
Connection: close
X-AspNet-Version: 4.0.30319
Content-Length: 366
Cache-Control: private
Content-Type: text/xml; charset=utf-8

<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body><soap:Fault><faultcode>soap:Client</faultcode>
<faultstring>Could not deserialize Soap message</faultstring>
</soap:Fault></soap:Body></soap:Envelope>