Java 如何使用Spring2.5将资源注入EJB3bean? 如果在应用程序中使用Spring 2.5为DI创建EJB3 bean(比如说无状态会话bean),我应该如何从Spring注入依赖关系而不将bean与Spring连接? < p>我不知道您是否考虑将拦截器应用为耦合,但这是我所知的标准方法。从文件的开头:
对于EJB3会话bean和 Spring提供的消息驱动bean 一个方便的拦截器,可以解析 Spring 2.5的Java 如何使用Spring2.5将资源注入EJB3bean? 如果在应用程序中使用Spring 2.5为DI创建EJB3 bean(比如说无状态会话bean),我应该如何从Spring注入依赖关系而不将bean与Spring连接? < p>我不知道您是否考虑将拦截器应用为耦合,但这是我所知的标准方法。从文件的开头:,java,spring,jakarta-ee,ejb-3.0,Java,Spring,Jakarta Ee,Ejb 3.0,对于EJB3会话bean和 Spring提供的消息驱动bean 一个方便的拦截器,可以解析 Spring 2.5的@Autowired注释 在EJB组件类中: org.springframework.ejb.interceptor.SpringBeanAutowiringInterceptor。 这个拦截器可以被应用 通过 @拦截器 EJB组件类中的注释, 或者通过拦截程序绑定XML EJB部署中的元素 描述符 @Stateless @Interceptors(SpringBeanAutowir
@Autowired
注释
在EJB组件类中:
org.springframework.ejb.interceptor.SpringBeanAutowiringInterceptor
。
这个拦截器可以被应用
通过
@拦截器
EJB组件类中的注释,
或者通过拦截程序绑定XML
EJB部署中的元素
描述符
@Stateless
@Interceptors(SpringBeanAutowiringInterceptor.class)
public class MyFacadeEJB implements MyFacadeLocal {
// automatically injected with a matching Spring bean
@Autowired
private MyComponent myComp;
// for business method, delegate to POJO service impl.
public String myFacadeMethod(...) {
return myComp.myMethod(...);
}
...
}
SpringBeanAutowiringInterceptor
by
默认情况下,从
ContextSingletonBeanFactoryLocator
,
使用bean中定义的上下文
定义文件名为
beanRefContext.xml
。默认情况下
需要单个上下文定义,
这是通过类型而不是
按姓名然而,如果你需要
在多个上下文之间进行选择
定义时,指定一个定位器键
必修的。定位器键(即
中上下文定义的名称
beanRefContext.xml
)可以
通过
凌驾
getBeanFactoryLocationWorkey
方法
习俗
SpringBeanAutowiringInterceptor
子类
从耦合的角度来看,我所知道的唯一其他选项(扩展EJB2.x支持类)要糟糕得多(因此不能回答您的问题)
另见