正在查看: Web Service 分类下的文章(第 1 页 / 共 3 篇)

Relationship between WebServices and Business Processes

What is the relationship between WebServices and business processes?

WebServices can be used as a implementations of activities within a business process.

Business processes in turn can be externalized as WebServices.

Web服务与商业流程的关系是什么?

简单来说,Web服务就是一个商业流程的具体实现,而反过来讲,商业流程是Web服务的抽象。

Tags: web service

解决办法:服务器未能识别 HTTP 标头 SOAPAction 的值

本文主要探讨跨平台调用Web Service出现:"服务器未能识别 HTTP 标头 SOAPAction 的值"的解决办法。

症状一:

Web Service + ASP.NET 应用程序部署到服务器默认目录中,在IE中用http://<服务器地址>/<程序目录名>/<默认启动页面名>发生“服务器未能识别 HTTP 标头 SOAPAction 的值”错误。

症状二:

在Java平台上调用.NET Web Service的服务时,出现"服务器未能识别 HTTP 标头 SOAPAction 的值"。

症状三:

在Java平台下调用.NET WEB Service,出现数据时有时无。

解决对策:

给.NET的WebService类(即.asmx文件下的类)添加属性[SoapDocumentService(RoutingStyle=SoapServiceRoutingStyle.RequestElement)]

小知识:

什么是SoapAction?它在WSDL中有何作用?

SOAPAction HTTP request header被用来标识SOAP HTTP请求的目的地,其值是个URI地址。SOAP发送并不限制格式、URI特征或其必须可解析,那么在这种情况下,发送一个HTTP SOAP请求时,其HTTP客户端必须使用/指明SOAPAction HTTP request header。

SOAPAction header的内容可以被用在服务端,诸如:防火墙适当的过滤基于HTTP的SOAP请求消息等场景。SOAPAction header的值为空串("")表示SOAP消息的目的地由HTTP请求的URI标识;无值则表示没有指定这条消息的目的地。

NetBeans 6.5下编写BPEL的WEB客户端出现nullpointerException的问题

今天在用NetBeans下开发BPEL时碰到了一个非常郁闷的事情,极可能是个BUG。

在NetBeans 6.5下,当我在一个WEB Project中调用已经部署好的BPEL时,SOAP始终返回的是Null值,就是我标题里面的NullPointerException。

此BPEL流程在逻辑和代码上绝对没有问题,这100%可以肯定,理由是在部署在服务器上的复合应用程序里面,我做过TEST CASE,SOAP数据返回一切正常。

让人崩溃的事情出现了,当我直接通过桌面用户的程序或者Console应用程序来Consume这个BPEL WebService却可以返回正常的数据。

于是,我开始怀疑是服务器的问题,在J2EE容器由Tomcat换成Glassfish后,发现问题依旧。

值得注意的是,在NetBeans的邮件列表里面有不少人碰到与我类似的问题。但到目前为止,我仍没有找到原因所在。

NetBeans 6.5对BPEL开发的支持实在是比较鸡肋。举个例子来说,我到现在为止都没有发现直接支持RESTful WebService的NetBeans插件。Eclipse倒是不少,比如JOpera,它可以直接将RESTful WEB服务返回过来的数据编组为SOAP格式,再供BPEL作为合作伙伴方式调用。