为了账号安全,请及时绑定邮箱和手机立即绑定

找不到 ManagedExecutorService

找不到 ManagedExecutorService

HUX布斯 2021-09-03 17:03:21
我对 Arquillian 和ManagedExecutorServices有问题。Arquillian 无法找到默认的ManagedExecutorService. 例外是:Caused by: javax.naming.NameNotFoundException: No object bound to name java:comp/DefaultManagedExecutorService我正在使用 IntelliJ 并GlassFish Embedded 3.1使用 Arquillian执行测试1.4.0.Final。这是我的单元测试:@Slf4j@RunWith(Arquillian.class)public class WorkhorseTest {    @Inject    private Workhorse workhorse;    @Deployment    public static WebArchive createDeployment() {        return ShrinkWrap.create(WebArchive.class)                .addClass(Workhorse.class)                .addAsWebInfResource(EmptyAsset.INSTANCE, "beans.xml");    }    @Test    public void testExecution() throws Exception {        final Future<Integer> result = workhorse.execute();        result.get(1, TimeUnit.MINUTES);        log.info("Executed...");    }}这是 EJB:@Slf4j@Singletonpublic class Workhorse {    @Resource    private ManagedExecutorService mes;    public Future<Integer> execute() {        return mes.submit(() -> {            log.info("Hello from a Runnable");            return 5;        });    }}如何ManagedExecutorService使用 Arquillian测试s?
查看完整描述

3 回答

?
慕无忌1623718

TA贡献1744条经验 获得超4个赞

我通过切换依赖项解决了它pom.xml:


老的:


<dependency>

    <groupId>org.glassfish.main.extras</groupId>

    <artifactId>glassfish-embedded-web</artifactId>

    <version>5.0</version>

    <scope>provided</scope>

</dependency>

新的:


<dependency>

    <groupId>org.glassfish.main.extras</groupId>

    <artifactId>glassfish-embedded-all</artifactId>

    <version>5.0</version>

    <scope>provided</scope>

</dependency>



查看完整回答
反对 回复 2021-09-03
  • 3 回答
  • 0 关注
  • 218 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信