Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >WildFly:如何使用嵌入式容器测试EJB?

WildFly:如何使用嵌入式容器测试EJB?
EN

Stack Overflow用户
提问于 2015-05-11 05:52:55
回答 1查看 4K关注 0票数 8

我正在做我的第一个Java项目,我想预编一个测试。我搜索并发现,从EJB3.1开始,就有可能使用嵌入式EJB容器来测试业务层。我正在使用WildFly,但我还没有找到如何配置嵌入式容器。

那么,如何正确配置嵌入式容器并使用WildFly测试EJB 3.1+呢?

我很感激你的帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-17 23:21:46

您必须使用jboss本身的框架arquillian ( http://www.mastertheboss.com/jboss-frameworks/arquillian/arquillian-tutorial )。

这个框架所做的是:在后台创建jboss实例。所有东西都部署在那里,这样您就可以在“后台”容器上运行ejb或servlet了。

配置它并不容易,所以我建议您从eclipse的Jboss开始。代码看起来如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
@Deployment
public static Archive<?> createTestArchive() {
     return ShrinkWrap.create(WebArchive.class, "test-demo.war")
            .addAsResource("META-INF/persistence.xml")
            .addAsWebInfResource(EmptyAsset.INSTANCE, "beans.xml");
}

我不赞成这种方法,它实际上是一个单独的部署,您需要完全了解WAR和EJB包的结构以及所有其他细节。

更好的做法是,您的EJB、JPAs和Servlet只是普通java类(POJO)的简单包装器,而真正的逻辑驻留在这些类中。然后您可以使用简单的单元测试来测试这些。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30169513

复制
相关文章
什么是EJB以及和Spring Framework的区别
EJB,对于新生代程序员来说,是一个既熟悉又陌生的名词,EJB,大家都听说过,但是不一定都了解过,EJB是一种开发规范,而不是像Spring Framework一样是一个开源框架,EJB需要大量的XML配置和编码,增加了开发人员的工作负担,学习曲线相对陡峭,因此逐步被ssh取代,而后是s2sh 、ssm、 到现在的springboot微服务。
关忆北.
2023/10/11
2.1K0
什么是EJB以及和Spring Framework的区别
应用服务器到底是个啥?| 从开发角度看应用架构2:对Java EE应用进行打包和部署!
一、前言 本文仅代表作者的个人观点; 本文在书写过程中,得到了同事kylin和shuli的指导,在此表示感谢; 本文的内容仅限于技术探讨,不能作为指导生产环境的素材; 本文素材是红帽公司产品技术和手册; 本文分为系列文章,将会有多篇,初步预计将会有9篇。 一.上篇回顾 在上一篇中,我们介绍了Java的基础,并通过maven编译和运行一个Java应用。具体而言: 企业应用程序的特点是能够处理事务性工作负载、多组件集成、安全性、分布式体系结构和可伸缩性。 Java企业版(Java EE)是使用Java开发
魏新宇
2018/06/22
3.3K0
wildfly 21使用指南
wildfly的前身是JBoss AS(JBoss Application Server),为了区别于JBoss的企业级应用JBoss EAP。在v8的时候改名为wildfly。
用户2323866
2021/06/22
2.8K0
EJB学习笔记一(EJB概述)
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/11
5060
wildfly(JBoss AS)应用服务器快速入门
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
程序新视界
2019/10/22
2.7K0
wildfly(JBoss AS)应用服务器快速入门
嵌入式软件测试笔记4 | 嵌入式软件测试如何制定主测试计划?
虫无涯
2023/06/08
3490
微服务体系下如何快速构建一个服务
近两三年的时间,微服务是热度陡增,作为旧有SOA体系的一下特殊展现,在企业级应用市场上面应用越来越广泛,越来越多的团队,开始采用微服务架构来改造现有的架构体系。不管实施的情况如何,至少已经有成形的案例在线上跑。哪我们这些远未达到微服务架构的产品该如何呢,手痒的话就自己动手鼓捣吧,毕经并不是都有那样的环境来运用微服务技术。
MavenTalker
2023/03/08
8020
微服务体系下如何快速构建一个服务
在CentOS 7上使用WildFly进行Java开发
JBoss AS(重命名为WildFly)已被使用多年,是最有名的高效和免费的Java社区应用服务器之一。当Red Hat开始为其企业版JBoss EAP的对内部部署,虚拟或云提供商业支持时,吸引了更多关注。红帽还为红帽企业Linux提供商业支持,并为客户提供多种产品的庞大生态系统。
用户1196457
2018/09/06
4.2K1
weblogic EJB 学习
大家好,又见面了,我是你们的朋友全栈君。 EJB 学习笔记 1、ejb 基础知识 (1) 无状态会话bean 不保存客户机的会话状态 优点:使用小量的实例即可满足大量的客户。每个实例都没
全栈程序员站长
2022/11/19
1.3K0
EJB学习
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/155522.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/07
4530
EJB3最新的EJB标准
Spring可以部分简化EJB本地和远程调用。EJB3分消息驱动Bean、有、无状态Bean和实体Bean。分别服务于应用层和持久层。JBoss的EJB3实体Bean部分的底层核心是Hibernate。  Model层?是MVC中的M吗?Spring支持配置表现层,Model可以通过Spring配置实现。比如你可以用Spring配置Struts。EJB和表现层没有任何关系。Model和它的关系只是Model可以去调用EJB罢了。  EJB3的持久层是一个新的标准JPA。EJB3的实体Bean的变化是最大的,吸收了Hibernate的ORM工具的很多好思想。不过要注意,JPA不是Hibernate。JPA是标准,Hibernate是框架。Hibernate+Hibernate元数据+Hibernate EntryManager组合起来,就是JBoss的JPA实现方案。JPA还有很多其他实现,比如Bea的开源实现OpenJPA。  注意,它们不属于MVC的任何一个部分。EJB属于应用层和持久层。Spring虽然有自己的Spring MVC,但是本质上来说,Spring属于中间层框架。  应用EJB的标准结构是:  表现层(Struts/JSF等)+应用层(EJB中的Session Bean)+持久层(实体Bean)。  或者纯Spring的:  表现层(Struts/JSF/Spring MVC)+应用层(Spring)+持久层(ORM框架或JDBC)。  Spring+EJB的:  表现层(Struts/JSF/Spring MVC)+应用层(Spring+EJB中的Session Bean)+持久层(实体Bean/ORM框架/JDBC)。
py3study
2020/01/17
9980
嵌入式Qt-表格使用测试
QTableWidget是Qt中的表格组件类,相关使用函数可以参考Qt Creator中自带的帮助文档。
xxpcb
2022/12/29
1K0
嵌入式Qt-表格使用测试
在wildfly中使用SAML协议连接keycloak
我们知道SSO的两个常用的协议分别是SAML和OpenID Connect,我们在前一篇文章已经讲过了怎么在wildfly中使用OpenID Connect连接keycloak,今天我们会继续讲解怎么使用SAML协议连接keycloak。
程序那些事
2020/12/31
2.2K0
如何在CentOS 7上安装WildFly 14
WildFly是一个最先进的Java Web应用程序服务器,围绕速度和轻量级设计。 WildFly以前称为JBoss,是开源的,旨在提供最快的Java运行时环境。借助易于添加和删除的子系统块,环境之间的集中配置,对最新Java企业标准的支持等功能,WildFly是应用服务器的绝佳选择。
星哥玩云
2022/07/19
8690
如何在CentOS 7上安装WildFly 14
was ejb学习[通俗易懂]
大家好,又见面了,我是你们的朋友全栈君。 最近因为项目需要,对ilog进行了学习,包括ilog在was的安装以及客户端连接ilog等内容。 个人感觉很多是通过ejb来进行查找及调用的,所以,特意自己做了一个ejb在was上部署以及客户端连接的例子: [b][color=red]1、ejb方面[/color][/b] ejb采用ejb 2,分三个类:Hello、HelloHome、HelloWord; [color=cyan]Hello:[/color] public class Hello implements SessionBean { /** The session context */ private SessionContext context; public Hello() { super(); // TODO Auto-generated constructor stub } /** * Set the associated session context. The container calls this method * after the instance creation. * * The enterprise bean instance should store the reference to the context * object in an instance variable. * * This method is called with no transaction context. * * @throws EJBException Thrown if method fails due to system-level error. */ public void setSessionContext(SessionContext newContext) throws EJBException { context = newContext; } public void ejbCreate() throws EJBException, RemoteException { // TODO Auto-generated method stub System.out.println(“ejb create”); } public void ejbRemove() throws EJBException, RemoteException { // TODO Auto-generated method stub } public void ejbActivate() throws EJBException, RemoteException { // TODO Auto-generated method stub } public void ejbPassivate() throws EJBException, RemoteException { // TODO Auto-generated method stub } /** * An example business method * * @ejb.interface-method view-type = “remote” * * @throws EJBException Thrown if method fails due to system-level error. */ public String sayIt() throws EJBException { System.out.println(“hello didi”); return “hello didi.”; } } [color=cyan][b]HelloHome[/b][/color] public interface HelloHome extends javax.ejb.EJBHome { public com.rox.HelloWorld create() throws javax.ejb.CreateException,java.rmi.RemoteException; } [color=cyan]HelloWorld[/color] public interface HelloWorld extends EJBObject{ public String sayIt() throws RemoteException; } [color=red][b]2、发布ejb到was中[/b][/color] 注意:在ejb的jndi项,填写e
全栈程序员站长
2022/11/11
4200
EJB的简单介绍和使用[通俗易懂]
大家好,我是架构君,一个会写代码吟诗的架构师。今天说一说EJB的简单介绍和使用[通俗易懂],希望能够帮助大家进步!!!
Java架构师必看
2022/09/12
4.5K0
EJB的简单介绍和使用[通俗易懂]
嵌入式软件测试笔记7 | 嵌入式软件测试中基于风险的测试策略如何开展?
虫无涯
2023/06/27
2180
配置嵌入式Servlet容器
SpringBoot默认是用的是Tomcat作为嵌入式的Servlet容器; 问题? 1)、如何定制和修改Servlet容器的相关配置; 1、修改和server有关的配置(ServerProperties): server.port=8081 server.context-path=/crud server.tomcat.uri-encoding=UTF-8 //通用的Servlet容器设置 server.xxx //Tomcat的设置 server.tomcat.xxx 2、编写一个EmbeddedSe
用户1112962
2018/07/03
6380
嵌入式Reactive Web容器
Webflux模式替换了旧的Servlet线程模型。用少量的线程处理request和response io操作,这些线程称为Loop线程,而业务交给响应式编程框架处理,响应式编程是非常灵活的,用户可以将业务中阻塞的操作提交到响应式框架的work线程中执行,而不阻塞的操作依然可以在Loop线程中进行处理,大大提高了Loop线程的利用率。
星哥玩云
2022/09/15
6100
点击加载更多

相似问题

使用嵌入式容器测试EJB。我如何登录?

10

Java 6-嵌入式容器EJB测试

30

如何使用嵌入式EJB容器制作胖jar

18

如何为嵌入式EJB容器定义测试数据源

22

WildFly EJB UnknownSessionID

17
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文