需要在struts2中通过操作名称获取操作URL

时间:2014-05-28 14:53:55

标签: java struts2 breadcrumbs

我是Struts2的新手。我必须在应用程序中创建面包屑,所以我想要做的是设置一个包含面包屑中所有链接的所有标签/网址的地图。我的问题是我不知道如何在动作类中获取动作的URL。

例如

private Map<String, String> breadcrumbs;

public String MyAction() throws Exception {

    breadcrumbs.put("List", SomeClass.getUrl("listAction"));
    breadcrumbs.put("Project", SomeClass.getUrl("projectAction"));
    breadcrumbs.put("Chart", SomeClass.getUrl("chartProjectAction"));

    return Action.SUCCESS;
}

那么,我应该使用什么而不是SomeClass来获取动作的Url?

提前致谢, 西普里安

1 个答案:

答案 0 :(得分:1)

最后,正如Aleksandr M建议的那样,我已经从Action发送了动作名称,并使用s:url标签直接从.jsp文件中编译URL

<s:iterator value="breadcrumbs" status="st">
    <s:if test="#st.last == true">
        <li class="active"><s:property value="key" /></li>
    </s:if>
    <s:else>
        <li><a href="<s:url action="%{value}" />"><s:property value="key" /></a></li>
    </s:else>
</s:iterator>

希望这会对某人有所帮助!