用Java调用C#的WebService接口

这篇具有很好参考价值的文章主要介绍了用Java调用C#的WebService接口。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

这是一个用Java调用C#版程序的例子,废话不多说,上代码:

C#接口代码:

using  System;
using  System.Web;
using  System.Web.Services;
using  System.Web.Services.Protocols;
using  System.Web.Services.Description;


[WebService(Namespace  =   " http://www.tangs.com/ " )]
[WebServiceBinding(ConformsTo  =  WsiProfiles.BasicProfile1_1)]
public   class  Service : System.Web.Services.WebService {
     public  Service () {

         // 如果使用设计的组件,请取消注释以下行 
         // InitializeComponent();  
    } 

    [SoapRpcMethod(Action  =   " http://www.tangs.com/Add " , RequestNamespace  =   " http://www.tangs.com/T " , ResponseNamespace  =   " http://www.tangs.com/T " , Use  =  SoapBindingUse.Literal)]
    [WebMethod]
     public   int  Add( int  a,  int  b) {
         return  a  +  b;
    } 

    [SoapRpcMethod(Action  =   " http://www.tangs.com/Hello " , RequestNamespace  =   " http://www.tangs.com/T " , ResponseNamespace  =   " http://www.tangs.com/T " , Use  =  SoapBindingUse.Literal)]
    [WebMethod]
     public  String HelloWorld() {
         return   " Hello, world! " ;
    } 

Java调用这个Webservice中的Add方法和HelloWorld方法:

1.有参方法:Add

public static void addTest()  {
         try {
            Integer i  =  1 ;
            Integer j  =  2 ;
            
             // WebService URL 
            String service_url  =  " http://localhost:4079/ws/Service.asmx" ;
            
            Service service  =  new  Service();
            Call call  =  (Call) service.createCall();
            call.setTargetEndpointAddress( new  java.net.URL(service_url));
            
             // 设置要调用的方法 
            call.setOperationName(new QName(" http://www.tangs.com/T " ,  "Add" ));
            
             // 该方法需要的参数 
            call.addParameter( " a " , org.apache.axis.encoding.XMLType.XSD_INT,
                    javax.xml.rpc.ParameterMode.IN);
            call.addParameter( " b " , org.apache.axis.encoding.XMLType.XSD_INT,
                    javax.xml.rpc.ParameterMode.IN);
            
             // 方法的返回值类型 
            call.setReturnType(org.apache.axis.encoding.XMLType.XSD_INT);
            
            call.setUseSOAPAction(true);
            call.setSOAPActionURI("http://www.tangs.com/Add");
            
             // 调用该方法 
            Integer res = (Integer)call.invoke(
                     new Object[]  {
                        i, j
                    } 
            );
            
            System.out.println(" Result:  " + res.toString());
            
        }   catch  (Exception e)  {
            System.err.println(e);
        } 
    } 

运行,结果返回:Result:3

2.无参方法:HelloWorld

public static void helloTest() {
         try {
            
            String endpoint  = "http://localhost:4079/ws/Service.asmx" ;
            Service service  = new Service();
            Call call = (Call) service.createCall();
            call.setTargetEndpointAddress(new java.net.URL(endpoint));
            call.setOperationName(new QName("http://www.tangs.com/T" ,  "HelloWorld"));

            call.setUseSOAPAction(true);
            call.setSOAPActionURI("http://www.tangs.com/Hello");
            
            
            String res = (String)call.invoke(
                     new Object[] {
                         null 
                    } 
            );
            
            
            System.out.println(" Result:  " + res);
        }   catch  (Exception e) {
            System.err.println(e.toString());
        } 
    }

可以看到,调用无参的webservice和有参的基本相同,不过无参调用时,不需要调用Call的addParameter方法和setReturnType方法

执行结果返回:Hello, world!文章来源地址https://www.toymoban.com/news/detail-650851.html

到了这里,关于用Java调用C#的WebService接口的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Java 客户端调用 WebService 接口的一种方式

      通过SoapUI创建一个SOAP Project;   项目名称自定义,WSDL地址维护WebService接口地址。点击OK即可   项目创建完成后,展开WebService项,可以看到具体的接口,打开接口下的Request,右侧面板Form标签下可以清晰的看到请求入参,点击Submit请求按钮可以看到Overview标签下的响应结

    2024年01月18日
    浏览(37)
  • Java调用WebService接口,SOAP协议HTTP请求返回XML对象

    Java调用Web service接口SOAP协议HTTP请求,解析返回的XML字符串: 1. 使用Java的HTTP库发送SOAP请求,并接收返回的响应。 可以使用Java的HttpURLConnection、Apache HttpClient等库。 2. 将返回的响应转换为字符串。 3. 解析XML字符串 ,可以使用Java的DOM解析器或者其他第三方库,如JDOM、DOM4J等。

    2024年01月19日
    浏览(38)
  • [经验分享]gpt-3.5-Turbo|unity中实现http接口调用gpt新接口以及信息处理的实现案例分享

    最近openAI发布了目前chatGPT所使用的模型gpt-3.5-Turbo,之前使用了text-davinci-003模型做了一个galgame的AI女友对话的demo。这次趁着新接口的发布,对这个demo也同步更新了模型调用的代码。本篇文章将分享一下,如何在unity里使用UnityWebRequest实现与openAI的接口调用以及信息处理的示例

    2024年01月16日
    浏览(30)
  • Java开发或调用WebService的几种方式

    1.服务端开发与发布 编写接口 编写接口的实现类 发布服务 访问已发布的WebService服务 打开浏览器输入http://127.0.0.1:8888/JaxWSTest?wsdl访问,如下面内容 截图内容1 浏览器中输入wsdl文档中的 http://127.0.0.1:8888/JaxWSTest?xsd=1可查看绑定的参数等信息看如下图: 截图内容2 jdk自带生成W

    2024年01月17日
    浏览(40)
  • 使用postman 调用 Webservice 接口

    使用postman 调用 Webservice 接口,postman,webService,接口,cxf

    2024年02月08日
    浏览(46)
  • c#对接webservice接口

    方式一:需要填写地址,不能映射每个方法 工具类 调用方法: 方式二:需要提前写好方法名,调用简单像调用类方法一样 调用方式:

    2024年02月08日
    浏览(38)
  • springboot使用restTemplate调用webservice接口

    1.首先确定wsdl的http地址,使用postman测试接口是否成功  在浏览器输入webservice地址可以找到相应的请求和响应示例。    如果postman返回了正确的数据,就说明测试成功! 2.接下来代码:

    2024年01月16日
    浏览(52)
  • 用Restful方式调用WebService接口(需认证)

    一个可以调用的 WebService接口 调用WebService接口的 SoapUI工具 调用Rest接口的 Postman/Apipost工具 首先接口在浏览器里访问是这样的,一个需要认证的接口 打开SoapUI工具,new一个Project,自定义一下名称和粘贴你的wsdl地址    解析wsdl的时候弹出提示输入账号密码,跟浏览器那边一样

    2024年02月13日
    浏览(26)
  • C# WebService&WebApi接口项目创建

    注意勾选红框项,默认是不勾选的,否则创建新项目时会找不到ASP.NET Web应用程序(.NET Framework)的模板。 0.demo源码获取:https://gitee.com/xiuhuang/webservice_demo 1.创建新项目,选择ASP.NET Web应用程序(.NET Framework)。 2.点击下一步,到这个页面时选择空。 3.选中项目右键,添加-新建项,

    2024年02月05日
    浏览(45)
  • C# 超详细的WebService创建、发布与调用(VS2019)

    这里我选择的是 “ ASP.NET Web应用程序(.NET Framework )”。 填写好项目名称、选择项目位置以及所使用的框架,这里我用的是“ .NET Framework 4 ”框架,然后点击创建。 继续点击创建。 打开解决方案资源管理器-右键创建的Web项目-添加-新建项 添加 web 服务(AMSX) 。 在这里除了默认

    2023年04月08日
    浏览(25)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包