在Tomcat(或其他服务器)中部署了两个WAR,foo1.war 和foo2.war。
所有的spring bean都定义在foo1.war中,但是有没有可能在foo2.war中部署的servlet中得到这些spring bean呢?
我不能只使用 WebApplicationContextUtils
来获取 WebApplicationContext
,对吗?它们是不同的 WAR。
谢谢
最佳答案
从技术上讲,如果您公开 servlet 上下文并调用 servletContext.getContext("/otherapp"),您可以获取其他应用程序的
,但这很丑陋。WebApplicationContext
。 getAttribute(..)
如果您简单地将公共(public)定义移动到 common.xml
并将其包含在两个项目中,您就可以拥有相同的 bean 定义的实例。
如果您需要在两个应用程序之间传递一些数据,请使用另一种机制:Web 服务(soap、rest)、消息传递 (jmx)。
关于java - 如何在当前 servlet 上下文之外获取 WebApplicationContext?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9019026/