zoukankan      html  css  js  c++  java
  • .NET调用Java写的WebService[原]

         最近遇到一个用.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)为方便使用期间使用如下的两个命令来将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提供的方法的时候会使用到

  • 相关阅读:
    文件合并
    排序
    canvas 的cliprect()实现画布剪切DEMO
    SurfaceViewDemo
    View实现事件监听DEMO(文本跟随触屏事件)
    android progressBar和seekBar的小DEMO
    Android DrawerLayoutDemo
    Fragment和FragmentActivity使用Demo
    SharedPreferences DEMO
    android中sharedPreferences的用法
  • 原文地址:https://www.cnblogs.com/huashanlin/p/1232315.html
Copyright © 2011-2022 走看看