小编use*_*384的帖子

使用CDI将战争部署到Jetty

我在IntelliJ中有一个maven项目,我试图将war文件部署到jetty容器中.这样做的目的是对所述war文件中的一些功能进行快速集成测试.

由于开箱即用Jetty没有附带CDI或JNDI,我试图添加对这些的支持,但遇到了一些问题.例如,我在启动时收到以下错误:

15:30:50 [34mINFO [0;39m o.a.s.c.CdiObjectFactory - [lookup]: Checking for BeanManager under JNDI key java:comp/BeanManager 
15:30:50 [39mDEBUG[0;39m o.a.s.c.CdiObjectFactory - [lookup]: BeanManager lookup failed for JNDI key java:comp/BeanManager 
Run Code Online (Sandbox Code Playgroud)

我已将焊接servlet jar包含在我的pom中,并且还将焊接侦听器添加到web.xml中,但它仍然无效.我正在使用Jetty 9.有什么想法吗?

的pom.xml

    <dependency>
        <groupId>org.jboss.weld.servlet</groupId>
        <artifactId>weld-servlet-core</artifactId>
        <version>2.0.4.Final</version>
    </dependency>
Run Code Online (Sandbox Code Playgroud)

web.xml中

<listener>
  <listener-class>org.jboss.weld.environment.servlet.Listener</listener-class>
</listener>
Run Code Online (Sandbox Code Playgroud)
<resource-env-ref>
   <description>Object factory for the CDI Bean Manager</description>
   <resource-env-ref-name>BeanManager</resource-env-ref-name>
   <resource-env-ref-type>javax.enterprise.inject.spi.BeanManager</resource-env-ref-type>
</resource-env-ref>
Run Code Online (Sandbox Code Playgroud)

jndi jetty maven cdi

2
推荐指数
1
解决办法
7341
查看次数

标签 统计

cdi ×1

jetty ×1

jndi ×1

maven ×1