Java 无法加载现有的spring应用程序上下文

Java 无法加载现有的spring应用程序上下文,java,spring,jsp,applicationcontext,Java,Spring,Jsp,Applicationcontext,我需要在Spring应用程序上下文中,通过从JSP文件调用,将一些属性从DB加载到bean。 我有一个包含JSP文件的Web项目,还有一个包含Spring应用程序上下文的EJB项目。我试图通过调用Web项目中的类/servlet来重新加载属性,该类/servlet将调用服务层。这两个项目都打包到和EAR中,并部署到服务器上。 我知道这个方法不是最好的,但这个工具是一个临时的,需要使用它,只要我们建立一个管理模块 我尝试了几种加载现有上下文的方法,但得到的是空值。 1) 在JSP文件中: Appl

我需要在Spring应用程序上下文中,通过从JSP文件调用,将一些属性从DB加载到bean。 我有一个包含JSP文件的Web项目,还有一个包含Spring应用程序上下文的EJB项目。我试图通过调用Web项目中的类/servlet来重新加载属性,该类/servlet将调用服务层。这两个项目都打包到和EAR中,并部署到服务器上。 我知道这个方法不是最好的,但这个工具是一个临时的,需要使用它,只要我们建立一个管理模块

我尝试了几种加载现有上下文的方法,但得到的是空值。 1) 在JSP文件中:

ApplicationContext ctx=WebApplicationContextUtils.getWebApplicationContext(request.getSession().getServletContext());
2) 在扩展ApplicationContextAware接口的类中:

@Component
public class ApplicationContextAwareProvider implements ApplicationContextAware  {
    static ApplicationContext context;

    public static ApplicationContext getContext() {
        return context;
    }

    @Override
    public void setApplicationContext(ApplicationContext context) {
        this.context=context;
    }
}
JSP内部:

MyBean myBean = ApplicationContextProvider().getContext().getBean("myBean",MyBean.class);
在这两种情况下获取NullPointerException作为我的ApplicationContext将始终为null。我做错什么了吗


是否因为ApplicationContext不可用于WebProject?请告诉我你的想法。。在这件小事上坚持了几天。

为什么要从jsp内部调用java代码?正如我所提到的,这只是一个临时解决办法。我们稍后将构建一个管理模块,并将其包含在其中,因为我们没有时间设计这个临时解决方案。