嵌入式码头的父/子上下文

时间:2014-05-06 12:56:42

标签: java spring spring-mvc servlets

我希望我的嵌入式jetty实例中存在servlet的上下文,以便在应用程序入口点static main()中创建根应用程序上下文的父上下文。

以下是入口点static main()代码

try (ConfigurableApplicationContext context = new GenericXmlApplicationContext("maincontext.xml")) {

    // Setup lots of things here like database connection

    JServer server = context.getBean(JServer.class);
    server.start(); // Start the embedded jetty server and join()
}

这是 JServer.start()代码

server = new Server(8080);        
server.setHandler(new WebAppContext("./webapp", "/"));
server.start();
server.join();

以下是 web.xml

<servlet>
    <servlet-name>App</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:/jettycontext.xml</param-value>
    </init-param>
</servlet>

以下是根上下文 maincontext.xml

<context:component-scan base-package="com.package">
    <context:exclude-filter type="regex" expression="com\.package\.webapp\.*" />
</context:component-scan>

这是调度程序servlet jettycontext.xml

<context:component-scan base-package="com.package.webapp" />    
<mvc:annotation-driven/>

我希望root maincontext.xml中存在的数据库连接可以从servlet上下文jettycontext.xml访问,因此父子关系。

我的直觉是我需要扩展Dispatcher Servlet来自行处理,但我不确定这是否是最佳方式。

0 个答案:

没有答案