【问题标题】:Tomcat 7.0+ How to launch with a custom ApplicationContextTomcat 7.0+ 如何使用自定义 ApplicationContext 启动
【发布时间】:2014-09-01 20:48:10
【问题描述】:

我正在想办法让 Tomcat(nicely) 使用我的自定义 ApplicationContext 启动服务器,例如:

public class MyApplicationContext 
             extends ApplicationContext {

      ...  (Some BL)  ...
}

是否有我可以在某处覆盖的 xml 参数,以便加载我的类而不是默认类?

【问题讨论】:

  • ApplicationContext 听起来像 Spring Framework。你想用那个上下文做什么?你想在你的应用启动时执行 bl 吗?
  • 我希望能够从我的 JSP 访问一些 Java BL……它比这更复杂,但这是我想做的事情之一。
  • 那么您使用的是 Spring Framework 和 Spring MVC 还是纯 JSP?
  • 普通的 Tomcat...没有别的
  • @Stefan 感谢您提醒我有关 ContextListener...我完全忘记了...

标签: java tomcat tomcat7


【解决方案1】:

Tomcat 的configuration documentation 配置节点接受“className”属性,它说,

"要使用的实现的Java类名。这个类必须 实现 org.apache.catalina.Context 接口。如果没有指定, 将使用标准值(定义如下)。”

【讨论】:

  • 我明白你的意思,它就像一个 servlet 类名,它创建一个 servlet 类型作为上下文。我正在寻找一个更通用的解决方案,其中 Tomcat 的所有上下文都将共享相同的类型。如果不拆开tomcat,恐怕这是不可能的:)
【解决方案2】:

所以我对这个问题的解决方案是添加一个 ContextListener,并在其中初始化一个稍后将从 servlet 访问的“单例”。 -- 我还在测试这个。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-31
    • 1970-01-01
    • 1970-01-01
    • 2014-07-10
    相关资源
    最近更新 更多