webservices系列(五)——javaweb整合Axis2及多service配置
1.新建一个项目动态web项目webservice_test3。
2.打开<Tomcat安装目录>webapps/axis2/WEB-INF。将lib、conf、modules三个目录复制,并粘贴到webservice_test3项目下的WEB-INF目录下。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbHVvNDEwNQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" width="227" height="168" alt="">
3.新建service配置文件,在webservice_test3项目下的WEB-INF目录创建services目录,在其下新建myservice目录(名字可任意)。再myservice目录下新建META-INF目录,再在新建的META-INF目录下创建services.xml。
4.写service方法。在src下新建com.lc.service包。并在其下新建NumService.java类。
代码例如以下:
/**
* @author luocheng
* 測试webservice实现类
*/
public class NumService {
public Integer getSum(Integer num1, Integer num2) {
return num1 + num2;
}
}
5.配置service,打开第3步新建的services.xml文件,代码例如以下:
<!-- name是url将訪问的地址 -->
<service name="AxisService">
<description>AxisService</description>
<parameter name="ServiceClass">
com.lc.service.NumService
</parameter>
<operation name="sum">
<messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
</operation>
</service>
在web.xml配置文件下增加例如以下代码:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://Java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
<servlet>
<servlet-name>AxisService2</servlet-name>
<servlet-class>
org.apache.axis2.transport.http.AxisServlet
</servlet-class>
<!-- 载入顺序。1代表tomcat最先载入该servlet -->
<load-on-startup>1</load-on-startup>
</servlet>
<!-- servlet-mapping配置的是servlet的訪问路径
servlet-name:要和上面的servle-name同样
url-pattern:是URL訪问该servlet时的路径前缀
-->
<servlet-mapping>
<servlet-name>AxisService2</servlet-name>
<url-pattern>/service/*</url-pattern>
</servlet-mapping>
</web-app>
6.公布项目,訪问http://localhost:8080/webservice_test3/service/AxisService?wsdl
多个service类的配置方法
在services.xml中<service>外套上<serviceGroup></serviceGroup>,就能够写多个service了。
<serviceGroup>
<!--service1配置-->
<service>...</service>
<!--service2配置-->
<service>...</service>
</serviceGroup>
实例配置例如以下
<!-- 配置service路径 -->
<serviceGroup>
<!-- name是url将訪问的地址 -->
<service name="AxisService">
<description>AxisService</description>
<parameter name="ServiceClass">
com.lc.service.NumService
</parameter>
<operation name="sum">
<messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
</operation>
<operation name="dVal">
<messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
</operation>
</service>
<service name="TestService2">
<description>TestService2</description>
<parameter name="ServiceClass">
com.lc.service2.TestService2
</parameter>
<operation name="append">
<messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
</operation>
</service>
</serviceGroup>
webservices系列(五)——javaweb整合Axis2及多service配置的更多相关文章
- Java WebService 教程系列之 Spring 整合 CXF
Java WebService 教程系列之 Spring 整合 CXF 一.引入 jar 包 <dependency> <groupId>org.apache.cxf</ ...
- CSS 魔法系列:纯 CSS 绘制各种图形《系列五》
我们的网页因为 CSS 而呈现千变万化的风格.这一看似简单的样式语言在使用中非常灵活,只要你发挥创意就能实现很多比人想象不到的效果.特别是随着 CSS3 的广泛使用,更多新奇的 CSS 作品涌现出来. ...
- Netty4.x中文教程系列(五)编解码器Codec
Netty4.x中文教程系列(五)编解码器Codec 上一篇文章详细解释了ChannelHandler的相关构架设计,版本和设计逻辑变更等等. 这篇文章主要在于讲述Handler里面的Codec,也就 ...
- WCF编程系列(五)元数据
WCF编程系列(五)元数据 示例一中我们使用了scvutil命令自动生成了服务的客户端代理类: svcutil http://localhost:8000/?wsdl /o:FirstServic ...
- JVM系列五:JVM监测&工具
JVM系列五:JVM监测&工具[整理中] http://www.cnblogs.com/redcreen/archive/2011/05/09/2040977.html 前几篇篇文章介绍了介 ...
- SQL Server 2008空间数据应用系列五:数据表中使用空间数据类型
原文:SQL Server 2008空间数据应用系列五:数据表中使用空间数据类型 友情提示,您阅读本篇博文的先决条件如下: 1.本文示例基于Microsoft SQL Server 2008 R2调测 ...
- VSTO之旅系列(五):创建Outlook解决方案
原文:VSTO之旅系列(五):创建Outlook解决方案 本专题概要 引言 Outlook对象模型 自定义Outlook窗体 小结 一.引言 在上一个专题中,为大家简单介绍了下如何创建Word解决方案 ...
- 系列五AnkhSvn
原文:系列五AnkhSvn AnkhSvn介绍 AnkhSVN是一款在VS中管理Subversion的插件,您可以在VS中轻松的提交.更新.添加文件,而不用在命令行或资源管理器中提交.而且该插件属于开 ...
- java多线程系列(五)---synchronized ReentrantLock volatile Atomic 原理分析
java多线程系列(五)---synchronized ReentrantLock volatile Atomic 原理分析 前言:如有不正确的地方,还望指正. 目录 认识cpu.核心与线程 java ...
随机推荐
- Java命名规范(新手宝典)
很多刚开始学习Java的童鞋都不知道如何命名类文件,方法名,字段名,常量名等,今天抽出时间整理了了一下.大佬绕过 Java命名的组成规则:英文大小写字母,数字,$和_. 这里有几点需要注意: 不能以数 ...
- 328 Odd Even Linked List 奇偶链表
Given a singly linked list, group all odd nodes together followed by the even nodes. Please note her ...
- 兼容浏览器 div固定浏览器窗口底部 浮动div
css内容: <style type="text/css"> #ken_BB { padding-right:30px; text-align: center; col ...
- jQuery——属相操作
属性获取:attr(属性名), 属性设置:attr(属性名,具体值) 移除属性:removeAttr(属性名) 特殊情况:prop(属性名).prop(属性名,具体值):表单中状态属性checked. ...
- IIS中实现http自动转换到https
IIS中实现http自动转换到https修改以下文件:C:\WINDOWS\Help\iisHelp\common\403-4.htm 为以下内容<!DOCTYPE HTML PUBLIC &q ...
- dubbo之本地伪装
本地伪装 本地伪装 1 通常用于服务降级,比如某验权服务,当服务提供方全部挂掉后,客户端不抛出异常,而是通过 Mock 数据返回授权失败. 在 spring 配置文件中按以下方式配置: <dub ...
- 在CentOS6,CentOS7安装 Let'sEncrypt 免费SSL安全证书
相对来说,个人网站建立SSL是昂贵的,而且往往过程繁琐.一个标准的2048位证书费用至少150美元/年,网站除了要支付一笔昂贵的费用.重新配置Web服务器,并需要解决大量的配置错误.这让广大中小网站望 ...
- Python_多线程1(创建线程,简单线程同步)
threading 模块除了包含 _thread 模块中的所有方法外,还提供的其他方法: threading.currentThread(): 返回当前的线程变量. threading.enumera ...
- HDU_1394_Minimum Inversion Number_线段树求逆序数
Minimum Inversion Number Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java ...
- Lua操作符的优先级
lua 操作符的优先级 lua操作符的优先级 如表所示(从高到低) 在二元操作符中,除了指数操作符 “^” 和连接操作符 “..” 是 ”右结合” 的,是所有其他操作符都是 “左结合” 的.因此如 ...