我正在将一个应用程序从Struts1迁移到Struts2。除了scope属性之外,我可以从Struts1配置文件(struts-config.xml)的下面的操作标记迁移所有东西。
Struts1配置:
<action path="/DomainAndIPBlocking"
type="com.tarangtech.da.struts.action.DomainBlockedListAction"
name="DomainBlockForm"
scope="session"
input="/DomainAndIPBlocking.do"
validate="false">
<forward name="success" path="/jsp/SystemAdminConsol/DomainBlocking.jsp"/>
</action>迁移的Struts2配置:
<action name="DomainAndIPBlocking"
class="com.tarangtech.da.struts.action.DomainBlockedListAction"
method="execute">
<result name="success">/jsp/SystemAdminConsol/DomainBlocking.jsp</result>
</action>表单DomainBlockForm是通过像下面这样扩展操作类DomainBlockedListAction来集成的:
public class DomainBlockedListAction extends DomainBlockForm我需要在整个应用程序中传递表单值。但是,这些值仅在请求/页范围内可用。因此,我应该有一个scope="session"的替代方案,从Struts1到Struts2,这样我就可以在整个应用程序中传递所有属性。
发布于 2015-06-10 13:19:38
在Action元素定义中的Struts 1 DTD中:
scope The context ("request" or "session") that is used to
access our ActionForm bean, if any. Optional if "name" is
specified, else not valid. [session]在Struts 2中,没有Actions,动作本身默认请求上下文。@meskobalazs在上面是正确的,如果您需要Struts 2中的会话作用域操作,可以用作用域拦截器覆盖它。
https://stackoverflow.com/questions/30750017
复制相似问题