1

my.jsp から action.java への ArrayList を取得できます

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>

アクション.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ファイルからキーを取得するにはどうすればよいですか?

4

1 に答える 1

0

コードは正しいように見えますが、唯一の問題は、「setSelectMyStdudent」が実際に呼び出されているかどうかです。

どこで定義していますか:

<%= editListURL %>

これが機能するには、次のように定義する必要があります。

<portlet:actionURL var="editListURL " name="setSelectMyStudent" />

また、「setSelectMyStdudent」がおそらく「setSelectMyStudent」であるはずのタイプミスがあることも知っています。私の例ではこれを修正しました。

これが役立つかどうか、または他に質問がある場合はお知らせください。

于 2012-06-12T13:21:02.310 に答える