【发布时间】:2015-04-13 02:32:40
【问题描述】:
我在一个项目中使用 Spring 3 + Struts 2 + Hibernate 3 等框架。它也使用 spring 安全性。
Spring 和 Struts 使用在 web.xml 中定义的 spring ContextLoaderListener 集成
<listener>
<display-name>Spring Initialization</display-name>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
有几个服务类通常会调用数据库。像agentserviceprocess 就是这样一个类,它具有像getAgents() 这样的方法。
Struts 动作对每个进程都有一个属性和 setter getter,这些进程类在 application-context.xml 中定义为 bean。
令人惊讶的是,我找不到任何将动作类作为类参数的 bean。我的意思是 spring 没有控制动作对象的实例化。那么spring如何在这些action中注入服务属性对象呢?
另外, 我找到了以下条目
<filter>
<filter-name>struts</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts</filter-name>
<url-pattern>*.action</url-pattern>
<url-pattern>*.htm</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
【问题讨论】:
-
你在struts中使用spring插件吗?
-
我不知道它到底是什么。但是我做了一些谷歌,在 web.xml 中找到了这个 StrutsPrepareAndExecuteFilter 条目。如果这有帮助。
标签: spring struts2 integration struts