public class ServletWrappingController extends AbstractControllerimplements BeanNameAware, InitializingBean, DisposableBeanSpring控制器实现,它包装了一个servlet实例,它在内部管理。这种包装的servlet是不知道外面的这个控制器,它的整个生命周期是在这里介绍的对比 (以ServletForwardingController )。
ServletWrappingController则是将当前应用中的某个 Servlet直接包装为一个Controller,所有到ServletWrappingController的请求实际上是由它内部所包装的这个 Servlet来处理的。
通过Spring调用常用的调度现有基础设施的servlet,例如,申请spring HandlerInterceptors其请求。
请注意,Struts有一个特殊的要求,因为它解析web.xml 找到自己的servlet映射。因此,你需要指定的DispatcherServlet作为 “servletName”在这个控制器servlet的名字,认为这样的Struts的DispatcherServlet的映射 (思维,它指的是ActionServlet的)。
这里声明了一个Controller,ServletWrappingController是为了Struts专门设计的,作用相当于代理Struts的ActionServlet
例如:一个DispatcherServlet的XML上下文,转发“ .做”到Struts的ActionServlet ServletWrappingController一个包裹 。所有这些请求将通过所配置的HandlerInterceptor链(例如一的OpenSessionInViewInterceptor )。从Struts的角度来看,一切都将照常上班。
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="interceptors">
<list>
<ref bean="openSessionInViewInterceptor"/>
</list>
</property>
<property name="mappings">
<props>
<prop key="
.do">strutsWrappingController</prop>
</props>
</property>
</bean>
<bean id="strutsWrappingController" class="org.springframework.web.servlet.mvc.ServletWrappingController">
<property name="servletClass">
<value>org.apache.struts.action.ActionServlet</value>
</property>
<property name="servletName">
<value>action</value>
</property>
<property name="initParameters">
<props>
<prop key="config">/WEB-INF/struts-config.xml</prop>
</props>
</property>
</bean>
ServletWrappingController则是将当前应用中的某个 Servlet直接包装为一个Controller,所有到ServletWrappingController的请求实际上是由它内部所包装的这个 Servlet来处理的。
通过Spring调用常用的调度现有基础设施的servlet,例如,申请spring HandlerInterceptors其请求。
请注意,Struts有一个特殊的要求,因为它解析web.xml 找到自己的servlet映射。因此,你需要指定的DispatcherServlet作为 “servletName”在这个控制器servlet的名字,认为这样的Struts的DispatcherServlet的映射 (思维,它指的是ActionServlet的)。
这里声明了一个Controller,ServletWrappingController是为了Struts专门设计的,作用相当于代理Struts的ActionServlet
例如:一个DispatcherServlet的XML上下文,转发“ .做”到Struts的ActionServlet ServletWrappingController一个包裹 。所有这些请求将通过所配置的HandlerInterceptor链(例如一的OpenSessionInViewInterceptor )。从Struts的角度来看,一切都将照常上班。
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="interceptors">
<list>
<ref bean="openSessionInViewInterceptor"/>
</list>
</property>
<property name="mappings">
<props>
<prop key="
.do">strutsWrappingController</prop>
</props>
</property>
</bean>
<bean id="strutsWrappingController" class="org.springframework.web.servlet.mvc.ServletWrappingController">
<property name="servletClass">
<value>org.apache.struts.action.ActionServlet</value>
</property>
<property name="servletName">
<value>action</value>
</property>
<property name="initParameters">
<props>
<prop key="config">/WEB-INF/struts-config.xml</prop>
</props>
</property>
</bean>