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

Другие вопросы по тегам