比如,要在某个PortletURL (例如actionURL里面传递参数),则代码如下:
- <a href="
- <portlet:actionURL name="doSomething">
- <portlet:param name="category" value="Java" />
- <portlet:param name="category" value="Portlets" />
- </portlet:actionURL>"
- >
- Do Something
- </a>
可以看到,我们加了2个<param>给<actionURL> ,每个param都包含一个name和一个value
于是在Portlet类的方法中,就可以处理这些参数:
因为本例中category参数名对应的值是多值,所以用getParameterValues()来解析
- @ProcessAction(name="doSomething")
- public void doingSomething(ActionRequest request, ...) {
- String[] categories = request.getParameterValues("category");
- ...
- }
于是categories[0] 和categories[1] 可以分别代表这2个被传递的参数值
----
特别注意,这种<param>是唯一的传递参数到Portlet的方法,不可以用通用的?来分割url和参数列表,&来分割多个参数“名-值”对。
本文转自 charles_wang888 51CTO博客,原文链接:http://blog.51cto.com/supercharles888/844866,如需转载请自行联系原作者