Java端通过CXF调用.NET端服务

开发 后端
今天在项目的过程中,java服务端使用cxf动态调用.net服务的时候碰到的一些问题,现将笔记记录如下,已被日后查看。详细请看下文

今天在项目的过程中,java服务端使用cxf动态调用.net服务的时候碰到的一些问题,现将笔记记录如下,已被日后查看。

1、CXF是 IONA的OpenSource ESB Celtix与 号称最快的Soap协议栈 XFire合并的 apache Incubate 项目。

CXF是一个JAX-WS API的实现。

CXF支持多种binding,transport。

CXF支持也支持除JAX-WS之外的服务模型,例如JBI,CORBA,SCA等。

2、网上资料:http://www.cnblogs.com/yg_zhang/archive/2010/11/15/1877658.html

3、在myeclipse上生成.net端的web service代理类,即web Service Client,步骤>右键项目>新建>其他>MyEclipse>Web Service>Web Service Client

4、C#调用Java服务参考资料:http://blog.csdn.net/cheng110110/article/details/6440002

5、Java与.NET通过wenservice进行相互调用:http://www.ibeifeng.com/tech.php?id=6105

 

6、

  1. View Code   
  2.      /**  
  3.       * PubService返回Stirng类型,参数Stirng类型  
  4.       */ 
  5.      @Override 
  6.      public String PubService(String data)  
  7.      {  
  8.          String str = Usual.mEmpty;  
  9.          String mReturn = "0001";  
  10.          String[] mStr = data.split(",");  
  11.          if (mStr[0].equals("inlogin") && mStr[1].equals("inlogin"))  
  12.          {  
  13.              mReturn = "000";  
  14.          }  
  15.              String serviceURL = "http://192.168.0.35/com.net/InService.asmx";  
  16.          try 
  17.          {  
  18.                
  19.              JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();  
  20.              // 这里也可用myeclipse建立Web Service Client,引用对象.class  
  21.              factory.setServiceClass(InServiceSoap.class);  
  22.              // 这里指定URL路径,如果InServiceSoap这个不是一个接口类的话,  
  23.              //下面这句代码会报错,提示不是一个接口  
  24.              //在使用java cxf的过程中,一定要使用接口。  
  25.                
  26.              factory.setAddress(serviceURL + "?wsdl");  
  27.            
  28.              //QName函数的两个参数,第一个是命名空间,第二个是webservice的服务名  
  29.              //第一个参数在.net服务发布时可以找到,也就是targetnamespace,  
  30.              //第二个参数在java的接口实现类中可以找到,也就是serviceName。  
  31.              factory.setServiceName(new QName("http://con.java.service/""wss"));  
  32.    
  33.              //InServiceSoap是一个接口,由.net web Service Client生成。  
  34.              InServiceSoap client = (InServiceSoap) factory.create();  
  35.              //通过生成的.net web Service Client调用服务的方法publishInformation  
  36.              str = client.publishInformation(mStr[0], mReturn, "20000""dfadasd");  
  37.              System.out.println("str:调用.net接口: "+str);  
  38.              client = null;  
  39.              factory = null;  
  40.          }  
  41.          catch (Exception e)  
  42.          {  
  43.              // TODO: handle exception  
  44.              e.printStackTrace();  
  45.          }  
  46.          finally 
  47.          {  
  48.          }  
  49.          return mReturn;  
  50.      } 

原文链接:http://www.cnblogs.com/cnblogs-lin/archive/2012/05/11/2496568.html

【编辑推荐】

  1. Java中的异常对程序效率有无影响
  2. Java线程池的原理及几类线程池的介绍
  3. Java持久化技术规范(JPA)主键生成策略
责任编辑:林师授 来源: Keep Running的博客
相关推荐

2021-10-19 08:58:48

Java 语言 Java 基础

2014-11-14 11:03:56

微软.NET

2009-07-27 12:56:27

控件CheckBoxLASP.NET服务器

2009-10-20 17:28:02

VB.NET服务器端

2010-03-18 17:47:07

Java 多客户端通信

2009-12-21 10:19:05

Silverlight

2009-09-10 17:11:12

ASP.NET 关闭页

2010-03-19 18:17:17

Java Server

2009-10-27 14:05:59

VB.NET程序

2016-03-18 09:04:42

swift服务端

2009-08-07 13:55:35

Java客户端类调用C# WebServi

2010-03-18 18:09:36

Java Socket

2021-10-21 08:21:10

Java Reflect Java 基础

2011-09-09 09:44:23

WCF

2009-08-21 16:14:52

服务端与客户端通信

2009-08-21 15:59:22

服务端与客户端通信

2024-03-06 14:58:52

客户端微服务架构

2011-07-06 13:41:06

ASP.NET

2024-01-29 08:04:48

Golang标准库服务端

2009-08-21 15:36:41

服务端与客户端
点赞
收藏

51CTO技术栈公众号