.NET调用Java写的WebService

简介: 原文 http://www.cnblogs.com/huashanlin/archive/2008/06/30/1232315.html 最近遇到一个用.net调用java写的webservice的应用,对方程序员提供了一个后缀为wsdl的文件,这个跟.Net里面生成的wsdl文件 差不多,起初没什么概念就查了点资料,知道可以将这个wsdl文件编译动态库直接调用,也就是生成一个代理了,这个跟以往经常将.net的 webservice描述地址进行编译似乎差不多,于是就尝试这写,还基本能实现。

原文 http://www.cnblogs.com/huashanlin/archive/2008/06/30/1232315.html

最近遇到一个用.net调用java写的webservice的应用,对方程序员提供了一个后缀为wsdl的文件,这个跟.Net里面生成的wsdl文件 差不多,起初没什么概念就查了点资料,知道可以将这个wsdl文件编译动态库直接调用,也就是生成一个代理了,这个跟以往经常将.net的 webservice描述地址进行编译似乎差不多,于是就尝试这写,还基本能实现。
基本格式如下
wsdl.exe /l:cs /n:NHWS /out:C:/NHWS.cs C:/Isws.wsdl
在vs命令行中运行就可以实现了

再则通过沟通我也索要了该wsdl文件的描述地址,类似与.net的描述地址,只不过java的文件后缀是.jws而.net的是.asmx
如下对照
[NET] http://110.11.4.5/WebSite1/Service.asmx?wsdl
[Java]http://***.***.**.**/WebSite1/Service?wsdl或http://***.***.**.**/WebSite1/Service.jws?wsdl
不过这里只是我遇到的情况 对java不是很了解 以上java提供的webservice地址应该只是其技术类中的一个吧 对java不了解

用.Net调用java的这个地址也可以,方式也很多,基本跟调用.net的地址一样
(1)在项目中添加webservice引用,通过向导即能完成
(2)为方便使用期间使用"VS2012 开发人员命令提示"中如下的两个命令来将java的webservice描述地址最终编译成一个动态库使用
A》生成类文件
  wsdl.exe /l:cs /n:NWS /out:C:/NWS.cs http://***.***.**.**/WebSite1/Service?wsdl
B》将类文件编译成动态库
  csc /target:library /out:"c:\NWS.dll" c:\NWS.cs
后面的使用就是一样的了
不过这里注意两个问题:
(1)描述地址最后的参数?wsdl有时候不可或缺,最好加上,因为你最终要编译的就是这个wsdl文件
(2)wsdl.exe是微软VS中提供的一个工具,在VS命令好中可以直接调用出来 这里要记住/n:TestWS也即/namespace:TestWS中你自行定义的一个命名空间TestWS ,这个在你后续调用java的webservice提供的方法的时候会使用到

目录
相关文章
|
5月前
|
Java C# 开发者
【干货】Java开发者快速上手.NET指南
【干货】Java开发者快速上手.NET指南
|
5月前
|
网络协议 Java Linux
Java 异常 java.net.UnknownHostException 的原因和解决方案
Java 异常 java.net.UnknownHostException 的原因和解决方案
|
3月前
|
网络协议 Java Apache
【Java】已解决java.net.HttpRetryException异常
【Java】已解决java.net.HttpRetryException异常
67 0
|
3月前
|
网络协议 Java
【Java】已解决java.net.UnknownHostException异常
【Java】已解决java.net.UnknownHostException异常
474 0
|
2月前
|
算法 Java 测试技术
java 访问ingress https报错javax.net.ssl.SSLHandshakeException: Received fatal alert: protocol_version
java 访问ingress https报错javax.net.ssl.SSLHandshakeException: Received fatal alert: protocol_version
|
2月前
|
Java 开发工具 Spring
【Azure Spring Cloud】使用azure-spring-boot-starter-storage来上传文件报错: java.net.UnknownHostException: xxxxxxxx.blob.core.windows.net: Name or service not known
【Azure Spring Cloud】使用azure-spring-boot-starter-storage来上传文件报错: java.net.UnknownHostException: xxxxxxxx.blob.core.windows.net: Name or service not known
|
3月前
|
开发框架 安全 Java
.net和java有什么样的区别?
Java和.NET在本质、编程语言、生态系统与工具、跨平台性、应用领域、性能与效率以及安全性与可靠性等方面都存在明显的区别。选择哪个平台取决于具体的需求、技术栈和目标平台。
214 7
|
4月前
|
网络协议 Java 程序员
TCP/IP协议栈是网络通信基础,Java的`java.net`包提供工具,使开发者能利用TCP/IP创建网络应用
【6月更文挑战第23天】 **TCP/IP协议栈是网络通信基础,它包含应用层(HTTP, FTP等)、传输层(TCP, UDP)、网络层(IP)、数据链路层(帧, MAC地址)和物理层(硬件信号)。Java的`java.net`包提供工具,使开发者能利用TCP/IP创建网络应用,如Socket和ServerSocket用于客户端和服务器通信。**
50 3
|
4月前
|
Java C# 数据安全/隐私保护
|
3月前
|
网络协议 Java 测试技术
【Java】已解决java.net.BindException异常
【Java】已解决java.net.BindException异常
142 0
下一篇
无影云桌面