我从my.jsp获取ArrayList到action.java
my.jsp
<%
List left = new ArrayList(), right = new ArrayList(), l = new ArrayList();
left.add(new KeyValuePair("1key", "item1value"));
left.add(new KeyValuePair("4key", "item4value"));
left.add(new KeyValuePair("3key", "item3value"));
right.add(new KeyValuePair("2key", "item2value"));
%>
<aui:form action="<%= editListURL %>" method="post">
<liferay-ui:input-move-boxes
leftBoxName="left"
leftTitle="Left box"
leftList="<%=left %>"
rightBoxName="right"
rightTitle="Right box"
rightList="<%=right %>"
/>
<aui:button type="submit" value="send"/>
</aui:form>
action.java
public void setSelectMyStdudent(ActionRequest actionRequest,
ActionResponse actionResponse) throws IOException, PortletException {
try{
String left = "";
left = actionRequest.getParameter("left");
if(left.isEmpty() || left == "" || left == null) {
System.out.println("left EMPTY");
left = "0";
} else {
KeyValuePair pair = new KeyValuePair();
pair.setKey(left);
System.out.println("left = " + left);
}
} catch (Exception e) {
System.out.println("Exception: " + e);
}
}
这是代码不起作用(。 请帮我解决这个问题。 如何从jsp文件中获取密钥?
答案 0 :(得分:0)
您的代码看起来是正确的,唯一的问题是您的“setSelectMyStdudent”是否实际被调用。
你在哪里定义:
<%= editListURL %>
至于这个工作,它应该被定义为:
<portlet:actionURL var="editListURL " name="setSelectMyStudent" />
你知道你有一个拼写错误,你有“setSelectMyStdudent”应该是“setSelectMyStudent”。我在我的例子中已经纠正了这一点。
如果这有帮助,或者您还有其他问题,请告诉我。