我如何@Inject CDI @ApplicationScoped bean到@RequestScoped JAX-RS bean?

ric*_*ich 5 java jax-rs resteasy cdi

我已经将@ApplicationScopedCDI注释添加到一个简单的bean:

@ApplicationScoped
public class History {
Run Code Online (Sandbox Code Playgroud)

并尝试将其@Inject转换为JAX-RS(resteasy)bean:

@RequestScoped
@Path("/history")
public class HistoryAPI {

@Inject
private History history;
Run Code Online (Sandbox Code Playgroud)

但历史仍然无效.我beans.xml在WEB-INF中有一个文件.我已经尝试了很多关于这个主题的变化,但是虽然app服务器(Wildfly)承认它是从CDI开始我无法让注入工作.我缺少什么想法?谢谢.

ETA:我试过一个空的beans.xml和几个变种,最新的是:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://java.sun.com/xml/ns/javaee"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:weld="http://jboss.org/schema/weld/beans"
       xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://docs.jboss.org/cdi/beans_1_0.xsd
                           http://jboss.org/schema/weld/beans http://jboss.org/schema/weld/beans_1_1.xsd">
</beans>
Run Code Online (Sandbox Code Playgroud)

Yur*_*uri 0

尝试从 HistoryAPI 中删除 @RequestScoped。

wildfly-quickstart 项目中有一个很好的 JAX-RS 示例

我在 WF8 beta1 上尝试过,一切都注入得很好。