如何在liferay portlet引用中从一个jsp到java控制器类的下拉列表中获取所选值

如何在liferay portlet引用中从一个jsp到java控制器类的下拉列表中获取所选值,java,jquery,jsp,liferay,Java,Jquery,Jsp,Liferay,我使用Liferay作为平台。我已经创建了两个值的下拉列表(真/假(“假”默认为选中)),一旦我点击更新按钮,它应该在首选项字段(即下拉列表)中更新。我使用下面的代码,但它给出了空值。我无法读取/获取从EditPreferences.jsp到EditController.java的选定下拉列表值。如果可以将值从Editpreferences.jsp呈现给EditConytroller类,那么对我来说应该没问题。谢谢你的建议 这是我在EditPreferences.jsp中的代码 <port

我使用Liferay作为平台。我已经创建了两个值的下拉列表(真/假(“假”默认为选中)),一旦我点击更新按钮,它应该在首选项字段(即下拉列表)中更新。我使用下面的代码,但它给出了空值。我无法读取/获取从EditPreferences.jsp到EditController.java的选定下拉列表值。如果可以将值从Editpreferences.jsp呈现给EditConytroller类,那么对我来说应该没问题。谢谢你的建议

这是我在EditPreferences.jsp中的代码

<portlet:defineObjects />
<script type="text/javascript" src="js/jquery.js"></script>
<%@page import="javax.portlet.PortletPreferences" %>
<%
    PortletPreferences pref = renderRequest.getPreferences();

    String IsCollege = pref.getValue("IsCollege","");
    Locale locale = renderRequest.getLocale();
    ResourceBundle bundle = portletConfig.getResourceBundle(locale);
    String updated = (String) request.getAttribute ("preferences-updated");
    if (updated != null && updated.equals ("true")) {

%>

  <div class="portlet-msg-info">
    <liferay-ui:message key="preferences-update-successful" />
  </div>
 <% 
 } 
 %>

  <portlet:actionURL var="actionOneMethodURL">

     <portlet:param name="action" value="actionOne"></portlet:param>

 </portlet:actionURL>

<form  method="POST" action="${actionOneMethodURL}" >
 <tr>
    <td>
        IsCollege:
    </td>

      <td>
        <select id="IsCollege">
            <option value="false" selected="selected">False</option>
            <option value="true">True</option>
       </select>
     </td>
    </tr>
    <tr>
        <td colspan=2>
        <input type="submit" id="updateBtn" value="Update">
        </td>
    </tr>
 </form>

选择标记缺少名称属性。指定的id不影响参数绑定。此外,名称必须以portlet名称空间作为前缀


下次您可能希望使用aui或liferay ui标记库,而不是手动呈现完整的HTML。

您没有提供“名称”属性来选择标记,这就是为什么您无法在控制器中获取选定值的原因。e、 例如,
不要忘记portlet名称空间,例如,
@PankajKathiriya和Tomas。。多亏了这两个。。它现在起作用了。请问,有人能回答应该在哪里回答吗?谢谢你提供的答案。谢谢
 @ActionMapping(params = "action=actionOne")
  public void setPublisherPref(ActionRequest request, ActionResponse response)
        throws Exception {
    PortletPreferences pref = request.getPreferences();

   String IsCollege = ParamUtil.getString(request, "IsCollege", "");
   pref.setValue("IsCollege", IsCollege);
   pref.store();

    request.setAttribute("preferences-updated", "true");

}