准备包

WebRoot/WEB-INF/lib/axis2-adb-1.6.2.jar
WebRoot/WEB-INF/lib/axis2-ant-plugin-1.6.2.jar
WebRoot/WEB-INF/lib/axis2-clustering-1.6.2.jar
WebRoot/WEB-INF/lib/axis2-codegen-1.6.2.jar
WebRoot/WEB-INF/lib/axis2-corba-1.6.2.jar
WebRoot/WEB-INF/lib/axis2-fastinfoset-1.6.2.jar
WebRoot/WEB-INF/lib/axis2-java2wsdl-1.6.2.jar
WebRoot/WEB-INF/lib/axis2-jaxbri-1.6.2.jar
WebRoot/WEB-INF/lib/axis2-jaxws-1.6.2.jar
WebRoot/WEB-INF/lib/axis2-jibx-1.6.2.jar
WebRoot/WEB-INF/lib/axis2-json-1.6.2.jar
WebRoot/WEB-INF/lib/axis2-kernel-1.6.2.jar
WebRoot/WEB-INF/lib/axis2-metadata-1.6.2.jar
WebRoot/WEB-INF/lib/axis2-mtompolicy-1.6.2.jar
WebRoot/WEB-INF/lib/axis2-saaj-1.6.2.jar
WebRoot/WEB-INF/lib/axis2-spring-1.6.2.jar
WebRoot/WEB-INF/lib/axis2-transport-http-1.6.2.jar
WebRoot/WEB-INF/lib/axis2-transport-local-1.6.2.jar
WebRoot/WEB-INF/lib/axis2-xmlbeans-1.6.2.jar

WebRoot/WEB-INF/lib/wstx-asl-3.2.9.jar

WSDL 接口java文件

package com.neusoft.ermsuite.css.ws.svac.bangjia;

public class BangJiaOrder {

    public String doService(String aa){
System.out.println(aa);
return aa;
}
}

service.xml配置接口描述

<service name="BangJiaOrder">
<description>
BangJiaOrder
</description>
<messageReceivers>
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
</messageReceivers>
<parameter name="ServiceClass">com.neusoft.ermsuite.css.ws.svac.bangjia.BangJiaOrder
</parameter>
</service>

启动tomcat,输入查看接口是否发布成功

http://localhost:8080/项目名/services/BangJiaOrder?wsdl

成功后有下面xml显示

  <?xml version="1.0" encoding="UTF-8" ?>
- <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:ns1="http://org.apache.axis2/xsd" xmlns:ns="http://bangjia.svac.ws.css.ermsuite.neusoft.com" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" targetNamespace="http://bangjia.svac.ws.css.ermsuite.neusoft.com">
<wsdl:documentation>BangJiaOrder</wsdl:documentation>
- <wsdl:types>
- <xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://bangjia.svac.ws.css.ermsuite.neusoft.com">
- <xs:element name="doService">
- <xs:complexType>
- <xs:sequence>
<xs:element minOccurs="0" name="aa" nillable="true" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="doServiceResponse">
- <xs:complexType>
- <xs:sequence>
<xs:element minOccurs="0" name="return" nillable="true" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
</wsdl:types>
- <wsdl:message name="doServiceRequest">
<wsdl:part name="parameters" element="ns:doService" />
</wsdl:message>
- <wsdl:message name="doServiceResponse">
<wsdl:part name="parameters" element="ns:doServiceResponse" />
</wsdl:message>
- <wsdl:portType name="BangJiaOrderPortType">
- <wsdl:operation name="doService">
<wsdl:input message="ns:doServiceRequest" wsaw:Action="urn:doService" />
<wsdl:output message="ns:doServiceResponse" wsaw:Action="urn:doServiceResponse" />
</wsdl:operation>
</wsdl:portType>
- <wsdl:binding name="BangJiaOrderSoap11Binding" type="ns:BangJiaOrderPortType">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
- <wsdl:operation name="doService">
<soap:operation soapAction="urn:doService" style="document" />
- <wsdl:input>
<soap:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
- <wsdl:binding name="BangJiaOrderSoap12Binding" type="ns:BangJiaOrderPortType">
<soap12:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
- <wsdl:operation name="doService">
<soap12:operation soapAction="urn:doService" style="document" />
- <wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
- <wsdl:binding name="BangJiaOrderHttpBinding" type="ns:BangJiaOrderPortType">
<http:binding verb="POST" />
- <wsdl:operation name="doService">
<http:operation location="doService" />
- <wsdl:input>
<mime:content type="application/xml" part="parameters" />
</wsdl:input>
- <wsdl:output>
<mime:content type="application/xml" part="parameters" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
- <wsdl:service name="BangJiaOrder">
- <wsdl:port name="BangJiaOrderHttpSoap11Endpoint" binding="ns:BangJiaOrderSoap11Binding">
<soap:address location="http://localhost:8080/项目名/services/BangJiaOrder.BangJiaOrderHttpSoap11Endpoint/" />
</wsdl:port>
- <wsdl:port name="BangJiaOrderHttpSoap12Endpoint" binding="ns:BangJiaOrderSoap12Binding">
<soap12:address location="http://localhost:8080/项目名/services/BangJiaOrder.BangJiaOrderHttpSoap12Endpoint/" />
</wsdl:port>
- <wsdl:port name="BangJiaOrderHttpEndpoint" binding="ns:BangJiaOrderHttpBinding">
<http:address location="http://localhost:8080/项目名/services/BangJiaOrder.BangJiaOrderHttpEndpoint/" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>

调用webservice wsdl

package com.neusoft.ermsuite.css.sv.svac.svrequest.bo;

import javax.xml.namespace.QName;

import org.apache.axis2.AxisFault;
import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.client.Options;
import org.apache.axis2.rpc.client.RPCServiceClient; public class test { public static void main(String[] args) throws AxisFault {
// 使用RPC方式调用WebService
RPCServiceClient sc = new RPCServiceClient();
Options options = sc.getOptions(); // 指定调用WebService的URL
EndpointReference targetErp = new EndpointReference("http://localhost:8080/项目名/services/BangJiaOrder");
options.setTo(targetErp); // 指定getGreeting方法的参数值
Object[] opAddEntryArgs = new Object[] { "Test 1.0" }; // 指定doService方法返回值的数据类型的Class对象
Class[] classes = new Class[] { String.class }; // 指定要调用的doService方法及WSDL文件的命名空间
QName opAddEntry = new QName("http://bangjia.svac.ws.css.ermsuite.neusoft.com", "doService");

      sc.getOptions().setTimeOutInMilliSeconds(600000L);
// 调用doService方法并输出该方法的返回值
System.out.println(sc.invokeBlocking(opAddEntry, opAddEntryArgs, classes)[0]);
// 下面是调用getPrice 方法的代码,这些代码与调用getGreeting方法的代码类似
// classes = new Class[] {int.class};
// opAddEntry = new QName("http://ws.apache.org/axis2", "getPrice");
// System.out.println(sc.invokeBlocking(opAddEntry, new Object[] {}, classes)[0]); }
}
QName opAddEntry = new QName("http://bangjia.svac.ws.css.ermsuite.neusoft.com", "doService");
注意
"http://bangjia.svac.ws.css.ermsuite.neusoft.com"是在浏览器查看xml时可以看到的
targetNamespace="http://bangjia.svac.ws.css.ermsuite.neusoft.com"

webservice wsdl接口配置与调用的更多相关文章

  1. PHP调用webService WSDL 接口发送邮件

    1.什么是 webService WSDL?  webService WSDL 暴露一些接口给第三方调用,在底层会转化成一个HTTP请求,主要是不同语言之间为了通讯的一个协议,比如发送邮件的系统是用J ...

  2. java 调用wsdl的webservice接口 两种调用方式

    关于wsdl接口对于我来说是比较头疼的 基本没搞过.一脸懵 就在网上搜 看着写的都很好到我这就不好使了,非常蓝瘦.谨以此随笔纪念我这半个月踩过的坑... 背景:短短两周除了普通开发外我就接到了两个we ...

  3. 利用JavaScriptSOAPClient直接调用webService --完整的前后台配置与调用示例

    JavaScriptSoapClient下载地址:https://archive.codeplex.com/?p=javascriptsoapclient JavaScriptSoapClient的D ...

  4. [Java] java调用wsdl接口

    前提: ① 已经提供了一个wsdl接口 ② 该接口能正常调用 步骤1:使用cxf的wsdl2java工具生成本地类 下载CXF:http://cxf.apache.org/download.html ...

  5. 分享:根据webservice WSDL地址自动生成java调用代码及JAR包

    分享:根据webservice WSDL地址自动生成java调用代码及JAR包使用步骤:一.安装java 并配置JAVA_HOME 及 path二.安装ANT 并配置ANT_HOME三.解压WsdlT ...

  6. loadrunner做webservice接口之简单调用

    今天听大神讲了webservice做接口,我按照他大概讲的意思自己模拟实战了下,可能还有很多不对,一般使用webservice做接口,会使用到soapui,但是用了loadrunner以后发现lr很快 ...

  7. Java WebService接口生成和调用 图文详解>【转】【待调整】

    webservice简介: Web Service技术, 能使得运行在不同机器上的不同应用无须借助附加的.专门的第三方软件或硬件, 就可相互交换数据或集成.依据Web Service规范实施的应用之间 ...

  8. java-webService(调用wsdl接口)

    使用Axis或XFire实现WebService: Axis2是Apache下的一个重量级WebService框架,准确说它是一个Web Services / SOAP / WSDL 的引擎,是Web ...

  9. C# 不添加WEB引用调用WSDL接口

    在项目中添加WEB引用耦合度较高,更新时要更新引用,所以我建议不添加WEB引用调用WSDL接口,废话不多说,直接上代码 例如WSDL地址为:http://XXX.XX.XXX.XXX:9115/WsP ...

随机推荐

  1. 印刷电路板(PCB)的材料

    以玻璃为基础材料的板材可以在高达150℃到250℃的温度下使用.可选的介质材料有: FR4,介电常数ε0为4.6 环氧材料,介电常数ε0为3.9: 聚酰亚胺,介电常数ε0为4.5. 另外,以聚四氟乙烯 ...

  2. AngularJS中的Provider们:Service和Factory等的区别

    引言 看了很多文章可能还是不太说得出AngularJS中的几个创建供应商(provider)的方法(factory(),service(),provider())到底有啥区别,啥时候该用啥,之前一直傻 ...

  3. (转)ViewPager,ScrollView 嵌套ViewPager滑动冲突解决

    ViewPager,ScrollView 嵌套ViewPager滑动冲突解决 本篇主要讲解一下几个问题 粗略地介绍一下View的事件分发机制 解决事件滑动冲突的思路及方法 ScrollView 里面嵌 ...

  4. asp.net下出现其中的组件“访问被拒绝”的解决方法

    一.一般情况下,对该组件重新授权即可.附上ASP,NETWORK SERVICE用户的可修改权限. 二.其中最常见的原因是Indexing service服务引起的.解决方法就是停用Indexing  ...

  5. 【学】React的学习之旅1

    React的学习之旅1 单标签要有斜杠代表结束 用React.createClass()方法时,赋值后的组件名称首字母一定要大写 一定要先定义组件,再用ReactDOM.render调用 组件里ren ...

  6. Redis 简单命令

    1. 新增 set keyName "keyValue" 2. 获取 get keyName 查看所有Key keys * 3. 删除 //删除当前数据库中的所有Key flush ...

  7. git学习:多人协作,标签管理

    多人协作: 查看远程库的信息, git remote 推送分支到远程库 git push origin master/dev 注意:master是主分支,时刻需要与远程同步 dev是开发分支,也需要与 ...

  8. js声明json数据,打印json数据,遍历json数据

    1.js声明json数据: 2.打印json数据: 3.遍历json数据 //声明JSON var json = {}; json.a = 1; //第一种赋值方式(仿对象型) json['b'] = ...

  9. ERROR actor.OneForOneStrategy: org.apache.spark.SparkContext

    今天在用Spark把Kafka的数据往ES写的时候,代码一直报错,错误信息如下: 15/10/20 17:28:56 ERROR actor.OneForOneStrategy: org.apache ...

  10. php三维数组去重

    假设叫数组 $my_array; // 新建一个空的数组. $tmp_array = array(); $new_array = array(); // 1. 循环出所有的行. ( $val 就是某个 ...