2013-06-17 2 views
0

J'utilise des portlets de source et j'ai un formulaire avec un champ caché dans le formulaire. Lors de la soumission du formulaire, la valeur du champ caché se trouve dans la requête (testée à l'aide de Tamper Data) et ne parvient pas au contrôleur de la page suivante (méthode formBacking). Voici le code.La valeur du champ masqué ne passe pas à la page suivante dans les portlets Spring

function(){ 
formname.hiddenfield.value="value"; 
} 

<form action="url" method="post"> 
<input type="hidden" id="field1" name="field1" value="val"/> 

<input type="submit" value="button"/> 
</form> 

protected Object formBackingObject(PortletRequest request) throws Exception { 
String variable1 = request.getParameter("field1"); 
} 

Lorsque je vérifie les paramètres de la requête, je ne trouve aucun nom.

+0

Soumettez-vous le bon formulaire? – MaVRoSCy

+0

@MaVRoSCy, oui. – Sujith

+0

Cela ne va pas résoudre ce problème, mais vous devriez nommer vos ID de portlet pour éviter les conflits. Comme vous utilisez Spring Portlet MVC, vous pouvez trouver plus pratique de lier votre formulaire directement à votre contrôleur en utilisant @ModelAttribute –

Répondre

0

Par défaut, un portlet envoie une demande d'action au portlet Self. S'il doit accéder au contrôleur de la page suivante, l'URL de l'action de formulaire doit être l'un des portlets de la page suivante uniquement.

Questions connexes