如何从外部应用程序检索Tomcat中加载的Spring上下文

时间:2012-02-06 20:17:55

标签: java spring tomcat inversion-of-control

我正在尝试执行以下操作:

假设您使用Spring作为IoC引擎在Tomcat上运行Java EE应用程序。

我在应用程序中有另一个jar,它可以完全访问所有资源。即我可以实例化在tomcat中运行的相同应用程序上下文,但实例化所有依赖项大约需要30秒。

任何人都知道从外面检索当前的tomcats ApplicationContext是否可行?

有一种方法可以在servlet中请求WebApplicationContext但是我没有,我只有一个带有main方法的jar。

1 个答案:

答案 0 :(得分:6)

没有。您必须在tomcat(webapp)中运行才能访问servlet上下文(并从那里 - 应用程序上下文)。您甚至没有使用main方法在相同的运行时中。

如果您想从上下文中获取一些信息,则应将其作为服务公开。例如:

  • 通过Spring-MVC提供的宁静服务
  • 通过JMX
  • 通过JNDI