Spring mvc portlet: как получить данные из jsp?
У меня проблема, как я могу отправить свои данные из HTML-формы в JSP (портлет) на контроллер? Вот некоторый код
Портлет JSP
<form id="smsSender" method="post" action="${sendSmsUrl}">
<input type="text" name="phoneSuffix" maxlength="7"/>
<textarea id="message" maxlength="70" name="message"></textarea>
<br>
<input type="submit" value="Send">
</form>
<portlet:actionURL name="sendSms" var="sendSmsUrl">
</portlet:actionURL>
контроллер
@Controller
@RequestMapping("VIEW")
public class SmsController extends MVCPortlet {
@ActionMapping
public void sendSms(ActionRequest request, ActionResponse response) {
String message = ParamUtil.get(request, "message", "");
}
}
Пожалуйста, помогите мне понять, как это сделать правильно? Спасибо!
1 ответ
Решение
Проблема, кажется, из-за квалифицированных параметров для портлета:
Возможные решения:
я. Используйте теги aui html.
<aui:form id="smsSender" method="post" action="${sendSmsUrl}">
<aui:input type="text" name="phoneSuffix" maxlength="7" />
<aui:input type="textarea" id="message" maxlength="70" name="message" />
<br />
<aui:button type="submit" value="Send" />
</form>
ИЛИ ЖЕ
II. добавлять <portlet:namespace />
к атрибуту имени поля (полей):
<textarea id="<portlet:namespace />message"
maxlength="70" name="<portlet:namespace />message"></textarea>
ИЛИ ЖЕ
III. добавлять <requires-namespaced-parameters>false</requires-namespaced-parameters>
в liferay-portlet.xml