【问题标题】:How to map long REST urls in struts2 - using struts2 rest plugin如何在 struts2 中映射长 REST url - 使用 struts2 rest 插件
【发布时间】:2013-03-29 03:52:26
【问题描述】:

过去几天我一直在学习使用 struts2 rest 插件。但是我没有找到如何映射长休息 URL。

例如 如果我想映射如下 URL:

/profiles/user-test/orders/64/item/4

在哪里

username is user-test
order id is 64
item id is 4

如何将这样的内容映射到 struts2 动作?

我在互联网上发现的只是一个正在编辑/显示的单个级别等。但是如果我想在多个级别上显示某些内容 - 那么如何进行?请指导。

【问题讨论】:

    标签: java rest jakarta-ee struts2 friendly-url


    【解决方案1】:

    您可以使用Advanced Wildcard Mappings 完成此操作,无需 REST 插件:

    /profiles/user-test/orders/64/item/4

    用户名是用户测试

    订单编号为 64

    项目 ID 为 4

    此示例所需的操作配置为:

    <action name="/profiles/{username}/orders/{order}/item/{item}" class="fooBarAction">
        <result>fooBar.jsp</result>
    </action>
    

    【讨论】:

    • 成功了!!..抱歉回复晚了,我正在参加大学考试。
    • 虽然它不能直接工作,但我不得不使用正则表达式来防止用户名在profiles/之后跨越完整的url,同样,我将正则表达式与其他{named}变量一起使用。
    • 如果您愿意,请回答您自己的问题,以帮助未来的访客:)
    • 那么 Struts2 REST 插件只对单级 URL 有用吗? :( 。谢谢你的回答,我也试试看。
    • 这种映射在与 REST API 一起使用时不起作用。我的意思是,如果有动作/控制器说,movies actors reviews 并检查特定movieactorsreviews,我们将拥有像movies/{movie_id}/actors/{actor_id} 或@ 这样的URL 987654333@。但是由于'moves` actors reviews 本身就是动作,它并没有按照我们想要的方式工作......不知道为什么,就是这样。任何人都可以看看这个问题吗? stackoverflow.com/questions/71044199/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-14
    • 1970-01-01
    • 2015-12-11
    相关资源
    最近更新 更多