基于JAX-WS的webService开发实例
最近因为工作原因接触到webService,所以记录下开发中碰到的问题,方便自己以后复习,顺便发扬一下开源精神。刚刚接触webServie如果有什么错误欢迎大家指正。
本地环境:myEclipse10.6 tomcat7 JDK7 jaxws-ri-2.2.10
第一步:创建一个基于JAX-WS的webService工程
如果原先拥有正式项目也可以直接使用原有项目实现webService接口
第二步:引用库
引用myEclipse libray中的JAX-WS 2.1 Runtime Libraries(Project Metro 1.1)和JAX-WS 2.1 APILibraries
不知道为什么有些myEclipse中却无法找到这两个库,其中就包括我。
解决办法:下载jaxws-ri,将lib目录下的jar包全部复制到项目中lib目录下。
下载地址:https://jax-ws.java.net/
第三步:创建测试接口
package com.demo.webservice; import javax.jws.WebMethod;
import javax.jws.WebService; @WebService
public class Test {
//处理方法数量名称任意
@WebMethod
public String test1(String str){
return "测试1接收参数:" + str;
}
}
第四步:在WEB-INF目录下创建sun-jaxws.xml文件
<?xml version = "1.0"?>
<endpoints version="2.0"
xmlns="http://java.sun.com/xml/ns/jax-ws/ri/runtime"> <!-- webService接口配置参数 name名称 implementation实现接口的类 url请求此接口的地址 -->
<endpoint name="test1"
implementation="com.webservice.Test"
url-pattern="/test1">
</endpoint> </endpoints>
第五步:修改web.xml在web.xml中新增以下配置
<!-- 监听器 -->
<listener>
<listener-class>
com.sun.xml.ws.transport.http.servlet.WSServletContextListener
</listener-class>
</listener> <servlet>
<servlet-name>test1</servlet-name>
<servlet-class>
com.sun.xml.ws.transport.http.servlet.WSServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>test1</servlet-name>
<url-pattern>/test1</url-pattern><!-- select请求地址 就是在sun-jaxwx.xml配置的url -->
</servlet-mapping>
项目结构:
第六步:测试
发布项目到tomcat中,启动tomcat。
打开浏览器输入地址:http://localhost:8080/webService/test1?wsdl
如果出现下面这种页面说明webService已经发布成功
第七步:编写webService客户端
1.创建新的Web Project项目webServiceClient
2.使用myEclipse工具创建webService客户端
3.选择你新建的项目webServiceClient(新项目名称) 点击next
4.输入webService服务端地址,就是刚刚在浏览器输入的地址,点击next
5.等待一会儿,继续点击next
3.编写测试类
package com.demo.test; import com.demo.webservice.Test;
import com.demo.webservice.TestService; public class ClinetTest { public static void main(String[] args) {
TestService service = new TestService();//根据接口的名称改变
Test testPort = service.getTestPort(); String param = "测试1参数-你好!";//请求参数
String result = testPort.test1(param);//请求
System.out.println(result);//打印返回值
}
}
结果
项目结构
基于JAX-WS的webService开发实例的更多相关文章
- eclipse+webservice开发实例
1.參考文献: 1.利用Java编写简单的WebService实例 http://nopainnogain.iteye.com/blog/791525 2.Axis2与Eclipse整合开发Web ...
- eclipse+axis2+webservice开发实例
myeclipse10安装axis2插件 第一步:下载axis2-1.6的插件压缩包,axis2-eclipse-codegen-plugin-1.6.2.zip 和 axis2-eclipse-se ...
- 转:Eclipse+webservice开发实例
原文地址:http://blog.csdn.net/xw13106209/article/details/7049614 1.参考文献: 1.利用Java编写简单的WebService实例 http ...
- 基于Myeclipse+Axis2的WebService开发实录
最近开始学习了下在Myeclipse开发工具下基于WebSerivce的开发,下面将相关相关关键信息予以记录 Myeclipse的安装,本文以Myeclipse2014-blue为开发环境,相关配置执 ...
- WebService开发实例(Axis2实现,无需安装,快速实现)
曾经做过的项目里涉及Android客户端向服务器发送请求,服务器访问数据库获得数据并返回给Android客户端.当时Android客户端与服务器的通信已经实现,我只负责客户端布局和数据呈现的部分,近日 ...
- RESTLET开发实例(一)基于JAX-RS的REST服务
RESTLET介绍 Restlet项目为“建立REST概念与Java类之间的映射”提供了一个轻量级而全面的框架.它可用于实现任何种类的REST式系统,而不仅仅是REST式Web服务. Restlet项 ...
- [转贴]JAVA :RESTLET开发实例(一)基于JAX-RS的REST服务
RESTLET介绍 Restlet项目为“建立REST概念与Java类之间的映射”提供了一个轻量级而全面的框架.它可用于实现任何种类的REST式系统,而不仅仅是REST式Web服务. Restlet项 ...
- 转载 WebService 的CXF框架 WS方式Spring开发
WebService 的CXF框架 WS方式Spring开发 1.建项目,导包. 1 <project xmlns="http://maven.apache.org/POM/4.0 ...
- 开发基于CXF的 RESTful WebService web 项目 webservice发布
配置步骤 开发基于CXF的 RESTful WebService 1.创建Web项目并导入CXF的jar 2.在Web.xml中配置 CXFServlet <servlet> <se ...
随机推荐
- python全栈开发 * 线程队列 线程池 协程 * 180731
一.线程队列 队列:1.Queue 先进先出 自带锁 数据安全 from queue import Queue from multiprocessing import Queue (IPC队列)2.L ...
- OSS内文件如何设置为无时间限制的下载链接
OSS内文件如何设置为无时间限制的下载链接 想把一些文件上传到OSS里,把OSS当网盘用,做成分享的下载链接 发现获取的链接都是有时间限制的 有没有取消这个时间限制的功能或者方法 请将object的权 ...
- css学习_css布局案例
1.中间栏先加载 !!!(若不是这个条件的话 ,那可以用 calc 或者flex布局来实现 中间栏自适应,左右栏定宽) 2.中间栏自适应 width:100% 3.左右栏固定宽 左中右 ...
- Mac学习
碰到问题可以多查看帮助文件 快速上手 1,自动隐藏顶端菜单栏: 通用-> 外观 menu bar 2,docker 程序坞,左边为应用程序,右边是文件或者文件夹,38线 3,option -&g ...
- Android创建列表并为列表添加数据
在Android开发中经常会用到ListView,也就是列表,而列表的内容需要如何决定呢,很好的方法是使用各种adapter 首先来看看用entries添加列表内容 在布局文件中,创建一个ListVi ...
- UIPullRefreshFlash模块demo示例
UIPullRefreshFlash 模块概述:UIPullRefreshFlash模块对引擎新推出的下拉刷新接口进行了一层封装,app可以通过此模块来实现带炫酷动画效果的下拉刷新功能.使用此模块,在 ...
- Python_tkinter(3)_grid布局
Grid(网格)布局管理器,是Tkinter里面最灵活的几何管理布局器.注意:不要试图在一个主窗口中混合使用pack和grid. 1.简单的布局 from tkinter import * root ...
- linux基础命令--groupdel 删除群组
描述 groupdel命令用于删除用户组. groupdel命令会去修改系统下的/etc/group和/group/gshadow文件,删除有关用户组的所有项目(一般来说使用groupadd或user ...
- Linux-centos7下python3 环境设置
首先安装依赖包 yum -y groupinstall "Development tools" yum -y install zlib-devel bzip2-devel open ...
- 位运算符 & | ~ ^ << >>
# ### 位运算符 & | ~ ^ << >> var1 = 19 var2 = 15 # & 按位与 """ res = va ...