可以在Java SE web应用程序中将ejb注入servlet的带注释的字段中



Spring支持注入javax.ejb.EJB annotations,就像它注入@Autowired和其他jsr-220注入注释一样,这要归功于CommonAnnotationBeanPostProcessor类。

但是,注入对servlet不起作用,因为servlet不是由spring创建的。

这篇文章—Spring也会注入servlet—没有给出使用servlet的示例,但声称可以使用方面的编译时编织。不幸的是,编译时编织对我们来说不是一个选项。有可能在运行时这样做吗?如果有帮助的话,可以向servlet引入一个子类,但是我想保留EJB注释,以便servlet仍然可以部署在Java EE容器中。

编辑:该应用程序将部署到生产中的Java EE容器中,但我正在考虑使用spring来运行功能测试和本地部署,以利用Tomcat中的热JSP加载。

您将需要Java EE容器,如Glassfish中支持ejb注入,并注意注入工作在托管类上,如servlet,托管bean等(由容器管理的类),因此在正常类中的ejb注入将要求您使用查找。

最新更新