我有一个简短的问题,那就是如何在Glassfish服务器上运行使用Spring框架的应用程序?也就是说,我如何让它在Spring容器的控制下运行?我需要扩展服务器还是什么,我找不到太多关于这方面的信息,我读到的关于OSGI模块的东西,只是把我搞糊涂了。
发布于 2012-04-11 02:48:14
基本上,您使用web.xml来启动带有侦听器的Spring,然后映射一个或多个spring Dispatcher servlet。你在dispatcher-servlet.xml中定义控制器bean,注入你在applicationContext中定义的bean,然后它就会从那里级联而下。
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/applicationContext.xml
etc etc
</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>/myApp/*</url-pattern>
</servlet-mapping>发布于 2012-04-12 17:38:55
在部署描述符(web.xml)中,定义Servlet侦听器和上下文参数。
Context param - spring bean文件的文件位置。(允许使用通配字符,并拾取该通配字符选项下的一组文件。)
Listener - spring类,它将侦听请求。不同的类可用于不同的目的。
<context-param>
<param-name>contextConfigLocation</param-name>
<!-- All file ends with Context.xml under web-inf folder -->
<param-value>WEB-INF/*Context.xml</param-value>
</context-param>
<listener>
<display-name>Spring context loader</display-name>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
<!-- use following if you want to use request scope -->
<!-- org.springframework.web.context.request.RequestContextListener -->
</listener>
<servlet>
<servlet-name>servlet name</servlet-name>
<servlet-class>org.springframework.web.context.support.HttpRequestHandlerServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>name</servlet-name>
<url-pattern>/URLName</url-pattern>
</servlet-mapping>https://stackoverflow.com/questions/10094473
复制相似问题