`
knight_yaya
  • 浏览: 13154 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

Java调用基于.Net的WebService

阅读更多

经过封装过的:

public class DotNetWebService_Caller {
 static Logger log = Logger.getLogger(DotNetWebService_Caller.class);
 public static Object getInstance(String service_url, String namespace,
   String dotNetMethodName, Object inputObj, Object outputObj) throws RemoteException{
  Object resultObj = null;

  // 创建WebService调用
  Service service = new Service();
  Call call = null;
  
  try {
   call = (Call) service.createCall();
   call.setTargetEndpointAddress(new URL(service_url));
  } catch (MalformedURLException e) {
   log.info("与基于DotNet的webService的URL建立连接时,出异常!",e);
   e.printStackTrace();
  } catch (ServiceException e1) {
   log.info("调用DotNet的webservice时,createCall()出异常!",e1);
   e1.printStackTrace();
  }
  
  // 设置调用的方法
  OperationDesc oper = new OperationDesc();
  oper.setName(dotNetMethodName);
  ParameterDesc param = new ParameterDesc(new QName(namespace,
    dotNetMethodName), ParameterDesc.IN, new QName(namespace,
    dotNetMethodName), inputObj.getClass(), false, false);
  oper.addParameter(param);
  // --设置返回类型--开始--
  oper.setReturnType(new QName(namespace, outputObj.getClass()
    .getSimpleName()));
  oper.setReturnClass(outputObj.getClass());
  oper.setReturnQName(new QName(namespace, outputObj.getClass()
    .getSimpleName()));
  oper.setStyle(Style.DOCUMENT);
  oper.setUse(Use.LITERAL);
  // --设置返回类型--结束--

  call.setOperation(oper);
  // 设置方法名
  call.setOperationName(new QName(namespace, dotNetMethodName));
  // 设置call的其他属性
  call.setUseSOAPAction(true);
  call.setSOAPActionURI(namespace + dotNetMethodName);
  call.setEncodingStyle(null);
  call.setProperty(Call.SEND_TYPE_ATTR, Boolean.FALSE);
  call.setProperty(AxisEngine.PROP_DOMULTIREFS, Boolean.FALSE);
  call.setSOAPVersion(SOAPConstants.SOAP11_CONSTANTS);

  /*
   * // 设置方法的输入参数 GetReceiptShowMsg parameters = new GetReceiptShowMsg();
   * parameters.setMobileOAEmailAddress(MobileOAEmailAddress);
   * parameters.setPageNum(pageNum); parameters.setItemNum(itemNum);
   * parameters.setSelField(selField);
   */

  // 调用方法
  //System.out.println("inputObj:="+inputObj);
  
  resultObj = call.invoke(new Object[] { inputObj });
  //System.gc();
  return resultObj;
 }
}

分享到:
评论

相关推荐

    Java调用ASP.NET的WebService接口实例

    Java调用.NET的WebService接口实例,jar包删减到三个,干净清爽,里面包含注多注释和图解,搞了半天的家伙拿出来与大家分享,无任何BUG,修改里面的参数即可直接运行,对于这种好东西,花了半天时间10分不算高,重在...

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

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

    java调用.net的WebService[借鉴].pdf

    【Java 调用 .NET WebService 基础知识】 在软件开发中,跨平台交互是常见的需求,Java 和 .NET 平台之间的通信可以通过 WebService 实现。本篇将详细讲解如何使用 Java 调用 .NET 开发的 WebService。 1. **...

    java axis 调用 .net webservice 短信收发

    Java Axis调用.NET WebService实现短信收发是一个跨平台、跨语言的通信技术应用实例。在本文中,我们将深入探讨这个主题,了解如何利用Java的Axis框架与.NET环境中的WebService进行交互,特别是在短信发送和接收方面...

    java调用.net webservice时所需的jar包

    在Java中调用.NET Web服务涉及的技术主要是SOAP(Simple Object Access Protocol)和WS-I(Web Services Interoperability),因为.NET Web服务通常是基于这些标准构建的。为了实现这种跨平台通信,Java开发者需要...

    java调用.net webservice实例

    Java调用.NET WebService是跨平台通信的一种常见方式,尤其在企业级应用中,不同技术栈的应用需要相互交互数据时,这种技术尤为实用。Apache Axis是Java中常用的用于调用Web服务的工具,它提供了方便的API来创建和...

    android 调用.net webservice

    ### Android调用.NET WebService详解 #### 一、概述 在Android开发中,与服务器进行交互是必不可少的一个环节。常见的交互方式包括HTTP请求、RESTful API等,而WebService作为一种传统但依然广泛使用的通信协议,...

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

    在IT行业中,跨平台通信...总之,Java通过JAX-WS可以轻松地调用.NET Web服务。在处理涉及Cookie的会话时,关键在于正确设置请求头并解析响应头中的Cookie信息。了解这些机制有助于构建可靠、健壮的跨平台通信解决方案。

    java调用.NET的webservice源码

    Java调用.NET的Web服务(WebService)是一种跨平台、跨语言的通信方式,它允许不同技术栈的应用程序之间共享功能和服务。在这个场景中,Java应用作为客户端,通过HTTP协议调用由.NET框架构建的Web服务。本文将详细...

    java调用.net webservice.doc

    java调用.net webservice

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

    总之,Java调用.NET/C#的Web服务是一个涉及网络通信、SOAP协议、类型转换等多个技术层面的过程,需要对Java和.NET平台都有一定的理解。正确配置和使用相关的工具库,可以有效地实现跨平台的通信。

    java采用axis调用.net写的WebService

    java采用axis调用.net写的WebService,WebService的参数有传人和传出,传出的参数为ref,java端ParameterMode.OUT,传人的为ParameterMode.IN,WebService返回值为String,java利用Map取传出参数,对Map进行遍历取得...

    用java调用.net接口的方法

    标题提到的“用java调用.net接口的方法”就是解决这个问题的一种技术实践。以下将详细讲解三种主要的实现方式,以及如何通过提供的源代码进行操作。 首先,我们要理解Java和.NET之间的互操作性通常依赖于Web服务...

    asp.net通过WebService调用Java接口全过程

    ASP.NET调用Java接口主要涉及的是跨平台的通信技术,其中关键步骤是通过WebService作为中间桥梁来实现。这里,我们详细解析整个过程: 1. **部署Java WebService**: - 使用Tomcat这样的应用服务器部署Java ...

    java和.net的webservice调用介绍

    - 在“javadot.doc”文件中,可能会详细描述Java应用程序如何使用JAX-WS调用.NET Web服务的步骤,包括解析WSDL,生成客户端代理类,以及如何通过这些代理类调用服务。 - “Web Service调用方式.doc”可能涵盖了...

    java调用.net的webservice传字符串参数

    总的来说,Java调用.NET的Web服务主要涉及对WSDL的理解、客户端代理的生成和Web服务方法的调用。无论是使用Axis还是XFire,都遵循类似的步骤。选择哪种方式取决于项目需求,如性能、易用性、社区支持等因素。理解...

    java处理.net webservice返回的对象

    在Java中调用.NET编写的ASMX WebService是一种常见的跨平台交互方式,允许Java应用程序利用.NET框架提供的服务。本文将详细介绍如何使用Apache Axis库来实现这一功能,以及处理.NET WebService返回的对象,特别是...

    Java调用.NET web service

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

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

    本文将深入探讨如何使用POST方式在.NET中调用.NET和Java编写的Web服务,并以XML作为请求数据格式。以下是对这个主题的详细阐述: 1. **什么是Web服务**: Web服务是一种基于互联网的软件应用,允许不同系统间的...

    HttpURLConnection调用.net WebService

    在这个场景下,我们将探讨如何利用`HttpURLConnection`来调用.NET平台上的WebService服务。 **一、HttpURLConnection简介** `HttpURLConnection`是Java `java.net`包中的一个类,它提供了HTTP协议的连接、读写功能...

Global site tag (gtag.js) - Google Analytics