使.net客户端从Java服务器使用服务的最佳方法是什么?

时间:2008-09-15 16:31:03

标签: java .net interop

我在.net中有一个用户界面,需要在请求/回复/更新模型上从服务器接收数据。唯一的限制是仅在服务器框上使用Java。

实现这一目标的最佳方法是什么?是通过在Java中创建Web服务然后在.net中访问它,还是应该创建Java代理并使用IKM在.net中转换它们?或者你有更好的主意吗?它可以是基于HTTP的,使用直接套接字连接或任何中间件。

3 个答案:

答案 0 :(得分:1)

用Java编写webservice并在.net

中访问它

答案 1 :(得分:1)

我推荐网络服务路线。它提供了一个标准接口,可以在将来被其他客户端平台使用。

.NET客户端很好地与Java Web服务交互,尽管存在一些问题。 .NET客户端可用的最佳两种技术是Microsoft Web服务增强(WSE)和Windows Communication Foundation(WCF)。 WSE是一种较旧的技术,不再由Microsoft更新,但在Visual Studio 2005及更早版本中仍然可用。我发现WSE在如何与基本服务接口方面更容易上手,但WCF对WS- *协议(安全性,信任等)有更多的支持。如果您的需求是基本的,并且您仍在使用Visual Studio 2005(.NET framework 2或更早版本),那么请使用WSE。如果你喜欢最前沿,或者你预计会有更高级的安全需求(听起来不像你想的那样),那么请选择WCF。请注意,WSE在Visual Studio 2008及更高版本中无法轻松运行,WCF将无法在Visual Studio 2005及更早版本中运行。

使用Web服务路径意味着您将设计一个可以重复使用的接口,并且当您完成时将导致系统与大多数其他路由相比松散耦合。缺点主要在于性能:xml序列化将比线路上的二进制慢,并且Web服务不能很好地处理大量数据。

答案 2 :(得分:0)

使用标准类型的Web服务(例如SOAP或XML-RPC)是最好的,因为它不仅易于生成/使用,而且在其他语言中也很容易。