【问题标题】:Struts 2 Framework - Redirect to ActionStruts 2 框架 - 重定向到动作
【发布时间】:2011-07-10 15:45:24
【问题描述】:

美好的一天!

我目前正在学习 Struts 2,我对 xml 很困惑。我不知道从哪里开始。

我希望我的 index.jsp 进入我的显示操作类所以我的代码如下:

index.jsp

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
   <META HTTP-EQUIV="Refresh" CONTENT="0;URL=package.action/DisplayContactAction">
</head>
<body>
</body>
</html>

struts.xml

   <action name="index">
        <result type="redirectAction">
            <param name="actionName">HelloWorld</param>
            <param name="namespace">/example</param>
        </result>
    </action>

谁能给我解释一下上面struts.xml上的代码是什么意思。

在我将页面重定向到操作类之后,我希望它转到 display.jsp

动作类

    private ArrayList<Contacts> contactsList;
    private int id;
    private String firstName;
    private String lastName;
    private String telNumber;
    private String email;

    public String execute() {
        String result = null;

        ContactsManager contactsManager = ContactsManager.getInstance();
        contactsList = ContactsManager.getContactsList();

        result = "success";
        return result;
     }

现在...如何使用 xml 传递值? 另外,如何将我的动作类生成的数据传输到 jsp?

谢谢。

【问题讨论】:

  • 你应该首先尝试了解基本的struts2工作流程,默认类型(dispatch),(通常一个action执行请求的逻辑,一个jsp显示结果)。只有当你明白这一点时,才能尝试理解特定的(很少使用的)redirectAction 类型,这会导致调用另一个操作

标签: jakarta-ee struts2


【解决方案1】:

谁能给我解释一下上面struts.xml中的代码是什么意思。

以下结果将重定向到 HelloWorld 操作的 URL(可能是 /example/HelloWorld)。

<result type="redirectAction">
    <param name="actionName">HelloWorld</param>
    <param name="namespace">/example</param>
</result>

它调用ActionMappergetUriFromActionMapping(ActionMapping) 方法来确定要重定向到的URL。您还可以使用标准重定向类型 (type="redirect")。

另外,如何将我的动作类生成的数据传输到jsp?

您需要一个 getter 来公开数据,然后您可以在 JSP 中访问它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-02-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-16
    • 2015-01-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多