带你走进EJB--将EJB发布为Webservice(1)
Web service是一个平台独立,松耦合基于可编程的web的应用程序,可使用开放的XML标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。
简单说Web service就是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API。也就是我们能够用编程的方法通过Web来调用这个应用程序。我们把调用这个Webservice 的应用程序叫做客户。
将EJB发布成WebService,在EJB容器中是很简单的事情,只要容器实现了JavaEE的JAX-WS标准就即可,我们需要做的就是增加一点点有关WebService的注解,打包发布到应用容器即可。接下来我们将进一步对EJB进行深入的了解,并且掌握将EJB发布为WebService.
服务端代码如下:
模拟用户管理接口
/**
* 用户管理接口
* @author Qing
*
*/
public interface UserManager {
public String sayHello(String name); }
实现UserManager的EJB
package com.tgb.ejb; import javax.ejb.Remote;
import javax.ejb.Stateless;
import javax.jws.WebMethod;
import javax.jws.WebService; @Remote
@Stateless
@WebService(name = "UserManagerWebService"
)
public class UserManagerBean implements UserManager{
@WebMethod
public String sayHello(String name) {
return "你好" + name;
} }
服务端可以不用强制规定WebService必须实现一个接口了,而一个普通的POJO+EJB注解的类就可以当做WebService服务器类。 不过这里我们还是继续用实现接口的方式.
接下来将此类打包部署到JBoss容器中并且重启JBoss,打开链接http://127.0.0.1:8080/jbossws我们将会看到下面的界面.
点击 a list of deployed services我们能够看到所发布的WebService服务,下图就是我们刚刚通过EJB来发布的Webservice.
点击Endpoint Address后面的链接我们会看到wsdl文档,如下图.
至此我们已经完成了将EJB发布为WebService.通过此Webservice我们可以通过客户端来进行调用并完成相关的业务逻辑.跟一般的EJB区别主要是在一个注释上:@WebService 通过此注释我们可以完成将EJB发布成WebService.
至于如何通过客户端来调用我们已经发布好的WebService,下一篇文章将会通过客户端来调用调用已经发布好的WebService.
带你走进EJB--将EJB发布为Webservice(1)的更多相关文章
- 带你走进EJB--将EJB发布为Webservice(2)
在企业级的应用程序中经常都要把用不同语言写成的.在不同平台上运行的各种程序集成起来,而这种集成将花费很大的开发力量. 简单的一个例子:应用程序经常需要从运行在A主机上的程序中获取数据:或者把数据发送到 ...
- 带你走进EJB--将EJB发布为Webservice(4)
接下来的我们将会自定义一个对象,然后看看EJB是如何对复杂的参数发布成WebService的. 代码如下:在第一个版本的基础之上加上增加用户的方法,参数为User. package com.tgb.e ...
- 带你走进EJB--MDB
在之前的文章中我们介绍了带你走进EJB--JMS 和 带你走进EJB--JMS编程模型 对JMS有了初步的了解, 作为EJB系列的文章我们会继续对EJB相关的内容做进一步深的学习和了解.而此次需要进行 ...
- 小丁带你走进git世界一-git简单配置
小丁带你走进git世界一-git简单配置 1.github的简单配置 配置提交代码的信息,例如是谁提交的代码之类的. git config –global user.name BattleHeaer ...
- 《ASP.NET Core项目开发实战入门》带你走进ASP.NET Core开发
<ASP.NET Core项目开发实战入门>从基础到实际项目开发部署带你走进ASP.NET Core开发. ASP.NET Core项目开发实战入门是基于ASP.NET Core 3.1 ...
- 小丁带你走进git的世界三-撤销修改
一.撤销指令 git checkout还原工作区的功能 git reset 还原暂存区的功能 git clean 还没有被添加进暂存区的文件也就是git还没有跟踪的文件可以使用这个命令清除他们 g ...
- 小丁带你走进git的世界二-工作区暂存区分支
小丁带你走进git的世界二-工作区暂存区分支 一.Git基本工作流程 1.初始化一个仓库 git init git clone git仓库分为两种情况: 第一种是在现有项目或目录下导入所有文件到 ...
- 老司机带你走进Core Animation
为什么时隔这么久我又回来了呢? 回来圈粉. 开玩笑的,前段时间ipv6被拒啊,超级悲剧的,前后弄了好久,然后需求啊什么的又超多,所以写好的东西也没有时间整理.不过既然我现在回来了,那么这将是一个井喷的 ...
- 带你走进rsync的世界
导读 Rsync(remote synchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件,也可以使用 Rsync 同步本地硬盘中的不同目录.rsync共有3种使用方 ...
随机推荐
- Delphi中StrToDateTime函数TFormatSettings参数的使用
var FSetting : TFormatSettings; DateTime1: tDateTime; begin FSetting := TFormatSettings.Cr ...
- Delphi 19种反调试检测法
//使用IsDebuggerPresent这个API来检测是否被调试function FD_IsDebuggerPresent(): Boolean;beginif IsDebuggerPresent ...
- 使用newScheduledThreadPool来模拟心跳机制
(使用newScheduledThreadPool来模拟心跳机制) 1 public class HeartBeat { 2 public static void main(String[] args ...
- Git:一本书 + 一个站点,让你掌握 Git
一本书:<<Pro Git in Chinese>> 一个网站:http://pcottle.github.io/learnGitBranching/
- 迷失第一季/全集Lost 1迅雷下载
迷失 第一季 Lost Season 1 (2004)本季看点:影片主要讲述一架客机坠落在太平洋的孤岛上,48名乘客侥幸生还.面对这种荒芜人烟的小岛,他们如何才能生存下去呢?生还者形形色色,国籍.人种 ...
- http链接的性能测试工具httping
安装:MAC环境下使用brew进行安装 brew install httping 使用参数: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 ...
- Orchard模块开发全接触3:分类的实现及内容呈现(Display)
一:分类用现有技术怎么实现? 实际就是创建 Query 和 Projection,如果不知道怎么做,参考:Orchard之在前台显式一个属于自己的列表(在这篇里,还进行了稍稍拓展),当然,基础的知道, ...
- C# 访问操作注册表整理
一..net注册表操作简介 .net中Registry 类,RegistryKey 类提供了操作注册表的接口 RegistryValueKind,用于指定操作注册表的数据类型. 二.使用实例 //获取 ...
- 【转】PHP笔试题2010年
From : http://www.51projob.com/a/PHP/20120905/602.html 下午,还有一场比较大的面试等着我[虽然接到pps的录用电话,可是心里还是想去verycd试 ...
- ds18b20驱动及应用程序
---------------------------------------------------------------------------------------------------- ...