`
xzy_love
  • 浏览: 32653 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
社区版块
存档分类
最新评论

在.NET与Java间进行Web Service交互的新选择

阅读更多

作者 Boris Lublinsky译者 张海龙 发布于 2008年3月31日 上午4时9分

 

谈到.NET和Java之间的Web服务交互性时,通常的选择只有SOAP over HTTP,而根据.NET 3.0的相关规范,这仅有的一个选择也将会受到更多限制,.NET中提供的BasicHTTP将是唯一能直接与Java Web Servcies进行交互的方式。

最近,有两个新的选择出现了——WebSphere MQ(WMQ)和ActiveMQ传送器,它们可以用于创建Java和.NET之间的交互式Web Services。而且.NET的可靠消息系统已经得到了扩展,因此对于MSMQ来说,WMQ和Active MQ都可以作为.NET Web Services的可靠传递者。

WMQ解决方案基于IBM AlphaWorks中IBM WMQ for Windows Communication Foundation的定制通道(Custom Channel),它的最新版本已于3月14日发布。这一产品允许将WMQ作为定制通道用于Windows Communication Foundation(WCF)框架(已随.NET Framework 3提供)中,它与微软的内建通道工作方式相同。

消息都是经过格式化的,以满足WMQ v6.0的SOAP over JMS实现,让应用程序即可以和运行于WCF之上的服务进行通信,也能和运行在WebSphere SOAP over JMS服务基础之上的服务进行通信,包括WebSphere应用服务器和CICS。

目前的实现是以概念验证为主,是为了帮助更好地理解对这一领域产品的需求(也就是说它并不适合在产品环境中使用),如何产品化这一实现的计划还没有最终确定。

定制通道的构建是通过Windows Communication Foundation的可扩展框架提供的,这一可扩展框架允许集成和使用那些与微软提供的内建传送器类似的传送器。服务型应用只要通过配置就可以使用新的定制通道,只要客户端应用程序是通过像微软的Service Metadata utility Tool(Svcutil.exe)这样的标准工具生成的,它们就可以正常运行。服务的元数据描述可以被正在运行的服务直接发布(可以通过一个附加的HTTP端点来暴露)或者使用WSDL(Web Service Description Language)。

目前的实现版本支持核心的消息功能,它有如下限制:

  • 对于一个服务实例,只有一个客户端可以使用双向通道的模式;
  • 双向通道是对WebSphere MQ v6所提供的SOAP/JMS实现的一种扩展,它只能用于WCF服务与其客户端之间的通信;
  • 仅支持核心的消息功能(如不支持像事务化和安全等高级特性)
  • 运行在现存WMQ v6的SOAP/JMS环境中的SOAP/JMS服务仅能进行单向操作;
  • 运行在CICS或WebSphere应用服务器的SOAP/JMS环境内的SOAP/JMS服务,不允许在一个单一合约中混合使用单向操作和请求/回复操作,而必须为每个通道形态分别创建独立的合约。

Active MQ解决方案基于Axis提供的JMS(由Java编写而成)和“插件式协议”特性(由.NET编写而成),因此,它并不是以真正的.NET定制通道方式包装的,这就需要更多的定制编程。

这两种解决方案都没有彻底的产品化,但它们却提供了一个很好实验基础,以选择合适的Web Services交互式传送器。

查看英文原文New Options for .NET-Java Web Services Interoperability

分享到:
评论
1 楼 Joo 2008-04-28  
ActiveMQ因为引入NIO在IO性能上比其他MQ产品有相当的优势呢

相关推荐

    ASP.net 中用C#调用Java web service 图解教程

    ASP.NET 中使用 C# 调用 Java Web Service ...在 ASP.NET 中使用 C# 调用 Java Web Service 需要了解 Web Service 的基本概念、使用 C# 调用 Java Web Service 和在 ASP.NET 中实现 Web Service 的客户端和服务器端。

    Java调用.NET web service

    本示例探讨的主题是“Java调用.NET Web Service”,这涉及到不同技术栈之间的互操作性,主要利用了Java的SOAP(Simple Object Access Protocol)客户端库来与.NET的Web服务进行通信。下面我们将详细解析这一过程。 ...

    .NET调用JAVA web 服务

    在.NET开发环境中,有时我们需要与Java Web服务进行交互,实现跨平台的数据交换和功能调用。这涉及到一种称为“互操作性”(Interoperability)的技术,它允许不同编程语言和平台之间的通信。本文将详细讲解如何在...

    Java 调用.NET web服务

    它允许Java应用程序通过SOAP消息与Web服务进行交互。使用JAX-WS,我们可以从WSDL文件生成Java客户端代理类,这些类封装了调用Web服务的具体细节。 3. **生成Java客户端代码**: 首先,我们需要从.NET Web服务的WSDL...

    用java调用.net接口的方法

    总的来说,调用.NET接口在Java中可以通过标准Web服务方式或RESTful接口实现,选择哪种方法取决于.NET接口的具体设计和项目需求。熟悉这些技术对于提高跨平台开发的效率至关重要。记得在实际应用中,一定要确保兼容性...

    .net Post方式调用.net和java的webservice

    在.NET开发环境中,有时我们需要与Java应用程序进行交互,特别是通过Web服务进行数据交换。本文将深入探讨如何使用POST方式在.NET中调用.NET和Java编写的Web服务,并以XML作为请求数据格式。以下是对这个主题的详细...

    ASP.NET与Web Service实例剖析(PPT)

    ASP.NET与Web Service是互联网应用程序开发中的关键技术,广泛应用于构建分布式、跨平台的应用系统。本实例剖析主要聚焦于这两者如何结合使用,帮助开发者深入理解Web Service在ASP.NET环境下的实际应用。 首先,...

    java访问.net webservice获取与设置cookie

    在IT行业中,跨平台通信是常见的需求,Java和.NET之间的交互也不例外。本篇文章将深入探讨如何使用Java访问.NET Web服务,并在过程中获取和设置Cookie,以便实现更高效、安全的会话管理。首先,让我们理解Web服务的...

    Java与.NET 的Web Services相互调用

    在进行Java与.NET之间的Web Services调用时,关键在于理解WSDL文件,它是Web服务的接口定义,包含了服务的命名空间、操作、消息结构等信息。通过WSDL,开发者可以生成相应的客户端代码,实现对服务的调用。 此外,...

    Java调用.net webservices实例

    Java通过Wsimport工具或者IDE(如Eclipse、IntelliJ IDEA)自动生成.NET Webservices的Java代理类,这些类封装了与服务的交互逻辑,使得开发者可以像调用本地方法一样调用远程Web Service。 在"CallNetService"这个...

    JAVA调用.NETWeb Service完整代码

    标题"JAVA调用.NET Web Service完整代码"表明我们将探讨Java如何通过SOAP(Simple Object Access Protocol)或者RESTful API与.NET Web服务进行交互。 首先,我们要理解.NET Web Service的本质,它是一种基于HTTP...

    java调用.net发布的webservice(asmx)

    本文将详细讲解如何使用Java调用.NET发布的Web Service(ASMX),并解决在此过程中可能出现的SOAPAction报错和“Server not identified”错误。 首先,我们需要了解ASMX。ASMX是.NET Framework早期版本中用于创建...

    web service 小例子asp.net带access数据库

    1. 创建一个新的ASP.NET Web服务项目:在Visual Studio中,选择“文件”->“新建”->“项目”,然后选择ASP.NET Web服务应用模板。 2. 添加Web服务方法:在生成的.asmx文件中,我们可以定义公共方法,这些方法会被...

    JAVA与.NET的相互调用通过Web服务实现相互调用.doc

    本文将详细介绍如何通过Web服务实现Java与.NET之间的相互调用。 Web服务作为一种标准化的通信机制,使得不同语言和平台的应用程序能够相互通信。其核心组成部分包括XML、XSD、SOAP和WSDL。 1. XML(可扩展标记语言...

    java程序调用.net/c#的webservice

    在本场景中,用户已经提供了一个.NET的Web服务,而我们需要在Java框架中进行调用。下面将详细介绍如何实现这一过程。 首先,理解Web服务的基本概念。Web服务是一种基于网络的、标准化的接口,允许应用程序之间交换...

    推荐使用.NET调用java编写的WebService方法借鉴.pdf

    总之,这篇文章提供了一种在.NET中直接控制和构建SOAP请求的方法,特别是在与Java WebService交互时,这种方法能更灵活地处理复杂或特殊的SoapHeader需求。通过使用内嵌资源和手动构建XML,可以更好地控制通信过程,...

    java和.net的webservice调用介绍

    - “Web Service调用方式.doc”可能涵盖了.NET环境下的Web服务调用过程,可能包括使用ASMX或WCF创建服务,以及如何在.NET代码中调用Java Web服务。 理解Java和.NET之间的Web服务调用是跨平台开发的关键。通过合理...

    .net调用java WebService

    1. **添加Web服务引用**:在Visual Studio中打开.NET项目,通过“添加服务引用”功能,输入Java WebService的WSDL URL,即可自动生成所需的代理类。 - **步骤**: 1. 在解决方案资源管理器中右键点击项目名称...

Global site tag (gtag.js) - Google Analytics