Вопрос

Наша форма JBoss публикует параметры в URL, а не в запросе, несмотря на то, что это форма POST. Я подтвердил, что форма размещена на реальной странице с помощью Firebug. Обратите внимание, что это внутри портлета.

Мы отправляем форму, используя javascript, например:

function submitForm(action, time)
{
    document.getElementById("pageActionInputID").value = time;
    document.getElementById("timeSpanFormInputID").value = action;
    document.getElementById("formID").submit();
}



<form action="<portlet:actionURL></portlet:actionURL>" method="POST" id="formID">
<input type="hidden" name="pageAction" id="pageActionInputID" />
<input type="hidden" name="timeSpan" id="timeSpanFormInputID" />
</form>

где 'портлет' из

<%@ taglib uri="http://java.sun.com/portlet" prefix="portlet"%>

Есть идеи, почему мы получаем входные данные в URL?

Вот как выглядит итоговая разметка:

<form id="formID" method="post" action="/portal/auth/portal/myTab?action=1">
<input id="pageActionInputID" type="hidden" name="pageAction"/>
<input id="timeSpanFormInputID" type="hidden" name="timeSpan"/>
</form>
Это было полезно?

Решение

Хотя было бы здорово, если бы кто-то смог это подтвердить. Я думаю, что портлет JBoss выбрасывает post / get и вместо этого использует URL действий.

Описательная статья о URL для рендеринга и действий

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top