2016-11-12 58 views
0

我想转换泽西2.x项目最初使用灰熊(嵌入Glassfish)写入不使用灰熊。该应用程序将部署到Jetty服务器(9.3)。使用CDI与泽西2.x部署在码头

只要我摆脱了所有的灰熊引用,添加了我的web.xml等等,我得到了一堆错误,我所有@Inject的引用都不起作用。

最初的应用程序使用焊接来处理所有的CDI的东西;我是在CDI内置到码头的印象之下的,是不是这样?

在我的POM中,我包括所有的球衣服务器代码。我得到一个错误的第一个地方是一个Oauth请求过滤的文件...它实现了ContainerRequestFilter并且有一个@Priority(Priorities.AUTHENTICATION)的注释。在这个课堂里面,我有一个@Inject的一些类来做lookup。

@Inject 
private OauthManager manager 

当Jetty启动时,它告诉我它无法找到OauthManager注入此类。

回答

0

CDI没有内置到Jetty中。

CDI由虚焊项目,该项目的工作只是正常码头提供。

查看关于如何设置此之前详细回答。

https://stackoverflow.com/a/20505983/775715

+0

所以,是的......我能得到应用部署......它似乎然而上班,每当我尝试访问任何东西......它告诉我有不止一个@ RequestScope上下文环绕......这让我感到很尴尬。 –