Spring Portlet @ActionMapping的用法
问题内容:
可以请任何人解释一下,POST请求应如何正确映射?从API文档尚不清楚。
值应分配有动作参数javax.portlet.action的值
@ActionMapping(value = "addDocOrder")
public void addDocOrder(@ModelAttribute("order").......
AND接下来,我们有了“ params”(JAVADOC:已映射请求的参数,从而缩小了主映射。)
@ActionMapping(params = "action=addDocOrder")
public void addDocOrder(@ModelAttribute("order").......
注释的value()参数的JAVADOC:操作的名称,根据Portlet 2.0“
javax.portlet.action”参数。如果未指定,则该方法将用作默认处理程序:即,对于未找到特定动作映射的动作请求。请注意,所有这些带注释的操作方法仅适用于包含处理程序类的@RequestMapping约束。
我绝对不明白“值”注释参数存在的意义。它在那里毫无意义…它本来应该是主要映射,而次要映射却是参数,但是{params =“ action =
addOrder”}使“值”成为多余。
请:看看与这个问题相关的https://stackoverflow.com/questions/4782971/handling-ajax-
requests-with-spring-
portlet
问题答案:
我也同意您的评估。阅读规范时,我唯一能看到的真正好处就是在标记中添加了一些特殊处理。显然,这两个是等效的:
<portlet:actionURL>
<portlet:param name="javax.portlet.action" value="addDocOrder"/>
</portlet:actionURL>
<portlet:actionURL name="addDocOrder" />
那是来自规范中的“ PLT.26.2 actionURL Tag”。