JAVA CDI 学习(5) - 如何向RESTFul Service中注入EJB实例
2024-10-19 00:20:33
RESTFul Service中如果要注入EJB实例,常规的@Inject将不起作用,在Jboss中,应用甚至都启动不起来(因为@Inject注入失败),解决方法很简单:将@Inject换成@EJB
参考代码:
CityInvoker是一个Stateless的EJB
package test; import javax.ejb.Stateless;
import ... @Stateless
public class CityInvoker { public CityResponse getCity() {
CityResponse cityResponse = null;
CityService cityService = ApplicationContextUtils.getCityService();
try {
cityResponse = cityService.findCityByCode(RequestBuilder
.buildCityFindRequest());
} catch (LMSException e) {
e.printStackTrace();
}
return cityResponse;
}
...
下面是在RESTFul Service中注入的示例:
package test.rest; import javax.ejb.EJB;
import javax.ws.rs.*;
import javax.ws.rs.core.MediaType;
import javax.xml.bind.JAXBElement;
import javax.xml.namespace.QName; @Path("/")
public class TestService { final String XMLNS_NAMESPACE = "http://yjmyzz.cnblogs.com/rest/service";
final String ROOT_NODE = "root"; @EJB
CityInvoker cityInvoker; @GET
@Path("/findCity")
@Produces(MediaType.APPLICATION_XML)
public JAXBElement<CityDto> findCity() {
JAXBElement<CityDto> result = new JAXBElement<CityDto>(new QName(
XMLNS_NAMESPACE, ROOT_NODE), CityDto.class, cityInvoker
.getCity().getCities().get(0));
return result;
}
...
最新文章
- cantor三分集
- Response.Cookies 和 Request.Cookies
- sql获取exec(&#39;&#39;)的返回值
- 地图索引 R-tree
- JavaScript 权威指南第6版 - [阅读笔记]
- Linux chmod
- VLC命令参数(转载)
- A Statistical View of Deep Learning (IV): Recurrent Nets and Dynamical Systems
- 1054: [HAOI2008]移动玩具
- [转载] NodeJS无所不能:细数十个令人惊讶的NodeJS开源项目
- 关于Resin SSL支持的两个问题
- docker容器访问宿主机IP
- Laravel笔记--Eloquent 模型
- Java编程的逻辑 (89) - 正则表达式 (中)
- ORACLE11g下如何利用SQL DEVELOPER连接上数据库
- Javascript 地图库收集
- 使用git工具删除github上的文件或者文件夹
- 08-matplotlib-颜色与样式
- java反射机制执行命令
- tips 前端 点击事件
热门文章
- 哭瞎!360云盘将关停,你的几十T照片和文件该怎么办
- Cloud9:解决ThinkPHP在C9上运行时连接数据库时报错";No such file or directory";的问题
- Java Security:公钥私钥、数字签名、消息摘要是什么
- PostgreSQL-安装9.2
- AIR ANE(本机扩展)使用中的一些问题(Android平台)
- 父容器根据子容器高度自适应:设置父容器 height:100%;overflow:hidden;
- KVM 介绍(1):简介及安装
- [转]OnKeyDown Numeric Validator CLIENT SIDE
- 又是周六了-MySQL特训
- 搭建PHP官方框架zend framework 2(LINUX)