java - EJB,无法在Json响应方法中进行注入(inject)

标签 java ejb

我的 EJB 有问题:

public class EntryResponseBuilder extends BaseResponseBuilder {
@EJB
private ApplicationCustomerCache applicationCustomerCache; //null

我在类里面有类似的东西,它返回 JSON 响应。

@Singleton
@Startup
public class ApplicationCustomerCache {
    @EJB
    CustomerDao customerDao;
    private Map<Integer, Customer> customerMap;
    private Map<Integer, List<Customer>> applicationToCustomersMap;
    private static Logger log = Logger.getLogger(ApplicationCustomerCache.class);

    @PostConstruct
    public void initialize() {
        try {
            get();
        } catch (Exception e) {
            log.error("ApplicationCustomerCache.init()", e);
        }
    }

    private void get() throws SQLException {

它工作正常,除了当我尝试在 EntryResponseBuilder 中注入(inject)时,它是空的。之前有一个函数,它注入(inject),我在其中使用 @Stateless 进行类。我在 Google 中搜索过,但找不到任何解决方案。

最佳答案

您在这里处理两个问题:

  1. 您正尝试在 POJO 上注入(inject) Bean 实例,该实例不受容器管理;
  2. 您遵循的 EJB 规范是什么?

对于他们两个,我认为以下答案可以帮助您:

关于java - EJB,无法在Json响应方法中进行注入(inject),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35173079/

相关文章:

java - 日志中的 EJB Default -[number] 是什么?

java - 同一 URL 的 POST 和 GET - Controller - Spring

java - 如何对所有 Controller 实现 ResponseBodyAdvice?

java - 在 Java 中使用 Thread 进行 ArrayList<object> 操作

java - 从管理 UI 启动和停止 Apache Camel 路由

java - 在不使用正则表达式的情况下在java中进行正则表达式匹配

java - m2eclipse wtp部署带有依赖项的ejb项目

java - 为什么无状态 session bean 是单线程的?

java - 如何更改无状态 EJB 的 Web 服务端点的 http session 超时?

java - 将无状态注入(inject) ManagedBean