将日期从 view.jsp 传递到我的 Java Portlet
Passing date from view.jsp to my Java Portlet
我的 view.jsp 上有以下代码:
<%@ taglib uri="http://java.sun.com/portlet_2_0" prefix="portlet" %>
<portlet:defineObjects />
<portlet:actionURL name="filterByDate" var="activitiesPortlet" />
<form action="${activitiesPortlet}" method="post">
Start: <input type="date" name="start-date">
End: <input type="date" name="end-date">
<input type="submit" value="Filter">
</form>
我的 Java Portlet 上的功能:
public void filterByDate(ActionRequest request, ActionResponse response) {
Object startDate = ParamUtil.get(request, "start-date", "");
System.out.println(startDate.toString());
}
调用该函数是因为系统输出打印了一个空行。但是我无法获取输入日期的值。将 html 输入日期传递到我的 Java Portlet 的正确方法是什么?
除非您没有将 Portlet 的 requires-namespaced-parameters
设置为 false
,non-namespaced 参数不会用 ParamUtil.getXX
处理
您可以使用 <aui:input>
字段(它们处理名称空间)或将 Portlet 名称空间(例如 <portlet:namespace>
)作为前缀添加到您的输入字段名称中。此外,您可以在您的 Portlet 代码中使用 ParamUtil.getDate 来处理以特定 DateFormat 发送的日期。
我的 view.jsp 上有以下代码:
<%@ taglib uri="http://java.sun.com/portlet_2_0" prefix="portlet" %>
<portlet:defineObjects />
<portlet:actionURL name="filterByDate" var="activitiesPortlet" />
<form action="${activitiesPortlet}" method="post">
Start: <input type="date" name="start-date">
End: <input type="date" name="end-date">
<input type="submit" value="Filter">
</form>
我的 Java Portlet 上的功能:
public void filterByDate(ActionRequest request, ActionResponse response) {
Object startDate = ParamUtil.get(request, "start-date", "");
System.out.println(startDate.toString());
}
调用该函数是因为系统输出打印了一个空行。但是我无法获取输入日期的值。将 html 输入日期传递到我的 Java Portlet 的正确方法是什么?
除非您没有将 Portlet 的 requires-namespaced-parameters
设置为 false
,non-namespaced 参数不会用 ParamUtil.getXX
您可以使用 <aui:input>
字段(它们处理名称空间)或将 Portlet 名称空间(例如 <portlet:namespace>
)作为前缀添加到您的输入字段名称中。此外,您可以在您的 Portlet 代码中使用 ParamUtil.getDate 来处理以特定 DateFormat 发送的日期。