基于Axis1.4的webservice接口开发(代码开发)
基于Axis1.4的webservice接口开发(代码开发)
一、开发环境:
我的开发环境是MyEclipse 2015+Apache-Tomcat-8.0.21。
二、代码开发:
1、新建一个Web Project工程,并导入jar包(Axis1.4的环境搭建在上一篇博客http://www.cnblogs.com/zhukunqiang/p/7124977.html中有介绍):

1、在com.ll.server包下新建java类,工程结构目录如下:

2、java代码如下(由于该项目用于测试,简单点无所谓):
package com.ll.server;
public class HelloWorld {
public String sayHello(String username){
return spake()+"hello, " + username;
}
public String spake(){
return "调用了HelloWorld类的spake方法";
}
}
4、配置web.xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
<display-name>axiswebservice</display-name>
<servlet>
<servlet-name>AxisServlet</servlet-name>
<servlet-class>org.apache.axis.transport.http.AxisServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
<welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list>
</web-app>
5、在工程的WEB-INF目录下新建deploy.wsdd文件,文件内容如下:
<?xml version="1.0"encoding="UTF-8"?>
<deployment xmlns="http:/xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<!-- service标签代表一个WebService服务 -->
<service name="HelloWorld" provider="java:RPC">
<!-- 命名空间,使用wsdl2java生成客户端代码时,包路径为:com.ll.server -->
<!-- 假如发布服务地址为:http://localhost:8080/axiswebservice/services/HelloWorld -->
<!-- 如果属性wsdlTargetNamespace不设置的话,生成客户端代码的默认包路径为:localhost.axiswebservice.services -->
<parameter name="wsdlTargetNamespace" value="http://server.ll.com" />
<parameter name="wsdlServicePort" value="HelloWorld" />
<!-- 服务类路径 -->
<parameter name="className" value="com.ll.server.HelloWorld" />
<!-- * 代表所有的方法都暴露 -->
<parameter name="allowedMethods" value="*" />
<!-- 当前WebService的作用域,它有3个值,分别是:request每个请求、session每个用户、application所有请求 -->
<parameter name="scope" value="request" />
</service>
</deployment>
6、在工程的WEB-INF目录下新建server-config.wsdd文件,文件内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<deployment xmlns="http://xml.apache.org/axis/wsdd/"
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<globalConfiguration>
<!-- 变量设定 -->
<parameter name="sendMultiRefs" value="true" />
<parameter name="disablePrettyXML" value="true" />
<parameter name="adminPassword" value="admin" />
<parameter name="attachments.Directory"
value="D:\office path\Apache-Tomcat-8.0.21\webapps\axis\WEB-INF\attachments" />
<parameter name="dotNetSoapEncFix" value="true" />
<parameter name="enableNamespacePrefixOptimization" value="true" />
<parameter name="sendXMLDeclaration" value="true" />
<parameter name="attachments.implementation"
value="org.apache.axis.attachments.AttachmentsImpl" />
<parameter name="sendXsiTypes" value="true" />
<requestFlow>
<handler type="java:org.apache.axis.handlers.JWSHandler">
<parameter name="scope" value="session" />
</handler>
<handler type="java:org.apache.axis.handlers.JWSHandler">
<parameter name="scope" value="request" />
<parameter name="extension" value=".jwr" />
</handler>
</requestFlow>
</globalConfiguration>
<handler name="LocalResponder"
type="java:org.apache.axis.transport.local.LocalResponder" />
<handler name="URLMapper" type="java:org.apache.axis.handlers.http.URLMapper" />
<handler name="Authenticate"
type="java:org.apache.axis.handlers.SimpleAuthenticationHandler" /> <!-- 核心重点:服务发布,name:表示发布的service名 -->
<service name="HelloWorld" provider="java:RPC">
<!-- 发布的service接口类 -->
<parameter name="className" value="com.ll.server.HelloWorld" />
</service> <transport name="http">
<requestFlow>
<handler type="URLMapper" />
<handler type="java:org.apache.axis.handlers.http.HTTPAuthHandler" />
</requestFlow>
<parameter name="qs:list"
value="org.apache.axis.transport.http.QSListHandler" />
<parameter name="qs:wsdl"
value="org.apache.axis.transport.http.QSWSDLHandler" />
<parameter name="qs.list"
value="org.apache.axis.transport.http.QSListHandler" />
<parameter name="qs.method"
value="org.apache.axis.transport.http.QSMethodHandler" />
<parameter name="qs:method"
value="org.apache.axis.transport.http.QSMethodHandler" />
<parameter name="qs.wsdl"
value="org.apache.axis.transport.http.QSWSDLHandler" />
</transport>
<transport name="local">
<responseFlow>
<handler type="LocalResponder" />
</responseFlow>
</transport>
</deployment>
三、原项目测试:
1、将项目部署到Tomcat中,并启动服务器。
2、在浏览器地址栏输入:http://localhost:8080/axiswebservice/services/HelloWorld得到如下界面:

3、在浏览器地址栏输入:http://localhost:8080/axiswebservice/services/HelloWorld?wsdl得到如下界面:

如果输入网址,出现2、3步所示的界面,则webservice接口部署成功。
基于Axis1.4的webservice接口开发的接口调用部分在下一篇中会有介绍:http://www.cnblogs.com/zhukunqiang/p/7125691.html
基于Axis1.4的webservice接口开发(代码开发)的更多相关文章
- 基于Axis1.4的webservice接口开发(接口调用)
基于Axis1.4的webservice接口开发(接口调用) 一.webservice接口代码参考上一篇博客: http://www.cnblogs.com/zhukunqiang/p/7125668 ...
- 基于Axis1.4的webservice接口开发(环境搭建)
基于Axis1.4的webservice接口开发(环境搭建) 一.环境搭建: 1.搜索关键字“Axis1.4”下载Axis1.4相关的jar包. 下载地址:http://download.csdn.n ...
- 基于 Axis2的webService接口的基本开发步骤
Axis2webServicejavaWeb 前言: 今天给大家分享一下前段时间在做项目的时候做webservice接口的一些心得. 在web工程lib目录下导入 Axis2相关jar包 enter ...
- 使用axis1.4生成webservice的客户端代码
webservice服务端: https://blog.csdn.net/ghsau/article/details/12714965 跟据WSDL文件地址生成客服端代码: 1.下载 axis1.4 ...
- 基于axis1.4的webservice实例
1.准备工作: 概念:SOAP(简单对象访问协议).WSDL(web服务描述语言).XML(可扩展标记语言).axis(阿帕奇可扩展交互系统) (1) 下载axis1.4,将axis1.4中的 ...
- axis1客户端调用webservice的通用代码
1.axis1 作为web service 客户端时,调用web service 服务端的通用代码 String url = "http://www.webxml.com.cn/webser ...
- 基于php的银行卡实名认证接口调用代码实例
银行卡二元素检测,检测输入的姓名.银行卡号是否一致. 银行卡实名认证接口:https://www.juhe.cn/docs/api/id/188 <?php // +-------------- ...
- 基于CXF框架下的SOAP Webservice服务端接口开发
最近对webservice 进行入门学习,网上也是找了很多的学习资料.总得感觉就是这了解点,那了解点.感觉不够系统,不够容易入门.差不多断断续续看了一个星期了,今天小有成果,把客户端,服务端都搞定了. ...
- Java调用webservice接口方法(SOAP message、xfire、axis)
webservice的 发布一般都是使用WSDL(web service descriptive language)文件的样式来发布的,在WSDL文件里面,包含这个webservice暴露在外面可供使 ...
随机推荐
- ThreadLocal的实现和使用场景
ThreadLocal 内部实现.应用场景和内存泄漏 深入理解线程局部变量:ThreadLocal <Java源码分析>:ThreadLocal /ThreadLocalMap Threa ...
- layerui如何隐藏按钮?
https://www.layui.com/doc/modules/layer.html#btn 建议把 btn: ['取消'],btnAlign: 'c',yes: function (index) ...
- iOS - 开发屏幕及视图层次
//屏幕视图分层 .UIWindow .UILayoutContainerView .UITransitionView .UIViewControllerWrpaperView .UILayoutCo ...
- vue--拖动排序
https://blog.csdn.net/jx950915/article/details/79803485?from=singlemessage
- DevOps的概念
DevOps(英文Development和Operations的组合)是一组过程.方法与系统的统称,用于促进开发(应用程序/软件工程).技术运营和质量保障(QA)部门之间的沟通.协作与整合.它的出现是 ...
- Numpy基础学习与总结
Numpy类型学习 1.数组的表示 import numpy as np In [2]: #numpy核心是高维数组,库中的ndarray支持多维数组,同时提供了数值运算,可对向量矩阵进行运算 In ...
- 使用代理*** and kubeadm init错误
没有代理 可申请AWS免费账户,创建EC2实例,搭建Shadowsocks服务器. 配置代理客户端 参考链接:https://www.zybuluo.com/ncepuwanghui/note/954 ...
- render, render_to_response, redirect,
自django1.3开始:render()方法是render_to_response的一个崭新的快捷方式,前者会自动使用RequestContext.而后者必须coding出来,这是最明显的区别,当然 ...
- 单调栈&单调队列学习笔记!
ummm,,,都是单调系列就都一起学了算了思想应该都差不多呢qwq 其实感觉这俩没有什么可说的鸭QAQ就是维护一个单调的东西,区别在于单调栈是一段进一段出然后单调队列是一段进另一段出?没了 好趴辣重点 ...
- (转)使用git stash解决git pull时的冲突
在使用git pull代码时,经常会碰到有冲突的情况,提示如下信息: error: Your local changes to 'c/environ.c' would be overwritten b ...