Я не знаю, как именно вы решили интегрировать две платформы, но по опыту могу сказать, что это работает.
например, мой файл struts-config.xml имеет следующее:
<struts-config>
<!-- ================== Form Beans ================ -->
<form-beans>
<form-bean name="UploadForm" type="com.foo.bar.forms.UploadForm" />
</form-beans>
<!-- ================== Action Mapping Definitions ================ -->
<action-mappings>
<action path="/pages/UploadFiles" name="UploadForm"
type="org.springframework.web.struts.DelegatingActionProxy" scope="request"
input="/pages/ImportFiles.jsp">
<forward name="success" path="/pages/SwitchView.do" />
</action>
<!-- ================================ Plugins ============================== -->
<plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">
<set-property property="contextConfigLocation"
value="/WEB-INF/action-servlet.xml, /WEB-INF/applicationContext.xml" />
</plug-in>
</struts-config>
Мой файл action-servlet.xml содержит следующее определение компонента:
<bean name="/pages/UploadFiles" class="com.foo.bar.actions.UploadFilesAction" />
Таким образом Struts-1 сохраняет контроль над MVC, но Spring «управляет» всем приложением.
Надеюсь, это поможет
EDIT:
ваш web.xml должен иметь следующее:
<listener>
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
</listener>
<servlet>
<servlet-name>context</servlet-name>
<servlet-class>org.springframework.web.context.ContextLoaderServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
РЕДАКТИРОВАТЬ 2:
Хм, в вашем Struts-config вы устанавливаете
тип вашей формы
(com.foo.bar.forms.UploadForm) нравится
я.
Мой код работает, но он странный
управлять фасолью и весной управлять
другие бобы.
Я не думаю, что это вообще странно ...
Конкретно, я хотел бы знать, если
это можно сделать
Да
добавить компонент:
<bean name="CaseUpdateForm" class="com.foo.bar.forms.CaseUpdateForm" >
и преобразовать приведенный выше компонент в:
<bean name="/pages/UploadFiles" class="com.foo.bar.actions.UploadFilesAction">
<property name="updateForm" ref="UpdateForm" />
</bean>