EJB开发web service
服务端的开发
用EJB就行服务端开发是非常简单的,EJB可以把无状态会话bean通过@WebService注解瞬间暴露为web服务。
例子
@Stateless
@Remote(JsunSer.class)
@WebService
public class JsunSerImpl implements JsunSer{
@WebMethod
public String run() {
return "succ";
}
public String run2(){
return "error";
}
}
如果不加@WebMethod那么所有的public 方法都会被暴露为服务,加了就只有run()被暴露为服务。
发布EJB,http://localhost:8080/jbossws/services查看发布的服务里面有wsdl地址
如图
http://127.0.0.1:8080/EJB_WebService/JsunSerImpl?wsdl
就是服务地址,开发客户端的时候会用到,现在一个服务就发布好了
在wsdl中有三个元素注意
wsdl的命名空间会默认以 http://+项目包名
服务的接口端点默认 接口名+Bean
服务的名称默认以 实现类+Service
以上都可以在注解 @WebService 中修改定义
客户端的开发
需要JAX-WS帮助我们自动生成java文件
http://jax-ws.dev.java.net下载最新的
解压打开lib目录将其中的jar文件全部copy到项目的lib目录下(没有lib建一个)
再利用ant build.xml文件运行
build.xml
<?xml version="1.0"?>
<project name="client_ws" default="wsclientgen" basedir=".">
<property name="src.dir" value="${basedir}/src" />
<path id="build.classpath" description="设置类路径">
<fileset dir="${basedir}/lib">
<include name="*"/>
</fileset>
</path>
<target name="wsclientgen" description="生成web服务客户端">
<taskdef name="wsimport" classname="com.sun.tools.ws.ant.WsImport" classpathref="build.classpath"/>
<wsimport
wsdl="http://127.0.0.1:8080/EJB_WebService/JsunSerImpl?wsdl"
sourcedestdir="${src.dir}"
package="com.jsun"
keep="true"
verbose="true"
destdir="${basedir}/bin"/>
</target>
</project>
其中keep指如果原来存在旧文件存在是否替换,verbose是否显示生成细节,destdir指编译后class文件存放的目录
运行ant 就会看到
java文件自动生成了
我们在调用时 如
JsunSer j=new JsunSer();
JsunSerImpl jl=j.getJsunPort();
jl就是我们要使用的对象
JsunSer是服务端项目中的接口类的名字
JsunSerImpl是自动生成的
EJB开发web service相关推荐
- [图解教程]Axis2与Eclipse整合开发Web Service之二:WSDL逆向生成服务端
[图解教程]Axis2与Eclipse整合开发Web Service之二:WSDL逆向生成服务端 一般开发Web Service,是选写服务端,再根据生成的WSDL文件生成客户端.看过一本SOA的书中 ...
- 使用Axis开发Web Service程序
今天是感恩节,差点又要在公司加班了.好在Web Service程序并不是特别难搞,下午终于在eclipse下调通过了,正确产生了服务器端和客户端的Java代码,apache的东西的确很不错. 说道We ...
- JAVA开发Web Service几种框架介绍
在讲Web Service开发服务时,需要介绍一个目前开发Web Service的几个框架,分别为Axis,axis2,Xfire,CXF以及JWS(也就是前面所述的JAX-WS,这是Java6发布所 ...
- 基于Tomcat5.0和Axis2开发Web Service代码详解
本文将详细介绍HelloWorld中使用的server和client端代码.阅读之前,你应该首先了解SOAP1.1协议.<?xml:namespace prefix = o ns = " ...
- 基于Tomcat5.0和Axis2开发Web Service应用实例
本文将介绍如何使用Tomcat5.0和Apache Axis2开发.部署及测试一个简单的Web Service应用.<?xml:namespace prefix = o ns = "u ...
- 使用 python 开发 Web Service
使用 python 开发 Web Service Python 是一种强大的面向对象脚本语言,用 python 开发应用程序往往十分快捷,非常适用于开发时间要求苛刻的原型产品.使用 python 开发 ...
- Java开发Web Service的简介
随着异构系统互联需求的不断增加,Web Service的重要性也日益彰显出来.凭借Web Service,我们可以实现基于不同程序语言开发的项目之间的互联互通,Web Service也是面向服务的架构 ...
- .NET使用VS2010开发Web Service
Web Service是一个面向服务的架构(SOA),不依赖于语言,不依赖于平台,可以实现不同的语言间的相互调用,通过Internet进行基于Http协议的网络应用间的交互.基于.NET平台,可以使用 ...
- [Axis2与Eclipse整合开发Web Service系列之三] 服务端返回值
前言 在前面的三篇中 [Axis2与Eclipse整合开发Web Service系列之一] 生成Web Service Client(将WSDl 转化成 Java代码) [Axis2与Eclipse整 ...
- [Axis2与Eclipse整合开发Web Service系列之二] Top-Down方式,通过WSDL逆向生成服务端(续)
前言 本篇是承接上一篇: [Axis2与Eclipse整合开发Web Service系列之二] Top-Down方式,通过WSDL逆向生成服务端 在上一篇粗略地介绍了如何使用Top-Down的方式创建 ...
最新文章
- python怎么调用函数的返回值类型,10、Python基础之函数的调用与返回值
- 详解下一代神经网络-无监督对比学习框架SimCLR
- EF映射字段类型不一致
- [java]键盘录入数值到数组-根据数值获取角标-找出数据中最大数值-反转数组
- javascript对象创建的五种方式
- 国行 lg g3 D858 刷 lg g3 D858hk 教程(备忘)
- DHPST分销系统 YEP分销云主机分销系统源码
- 【入门2】分支结构 (今天刷洛谷了嘛)
- 直播不是造车,特斯拉开店玩直播却栽了个“跟头”
- 正则表达式及常用大全
- 美的董事长:数字化每年投几十亿,看不见结果我也焦虑
- 二阶IIR滤波器系数计算方法
- 01、UART串口通信
- 为效率而生-开源Mac版Google Authenticator认证客户端GoldenPasspor
- centos7安装es mysql_centos7.2安装Mysql5.7.13
- 一封来信,诉说了开源社区里的天涯若比邻
- QLU ACM2018新生赛
- Mybatis insert exception argument mismatch
- IC学习笔记20——VCS的使用(一)仿真事件队列
- Java调用TSC条码打印机接口打印条码和二维码