Hi,

Je pense que l' erreur vient de cette ligne:

<% PortletURL url = renderResponse.createActionURL();%>

l'url générée est une actionURL et non un renderURL. Dans ce cas, les paramètres ne se trouvent pas dans l'objet renderRequest mais uniquement dans l'objet actionRequest.

Pour plus de détails, veuillez vous référez à la page 43 de la spécification portlet ( http://jcp.org/en/jsr/detail?id=168 ).

Cordialement.
KT.

Christophe Dumonet a écrit :
Bonjour,
Je vous remercie pour votre réponse concernant ma question, mais pas moyen !

Concrètement, je voudrais faire la chose suivante : monportlet affiche un formulaireJSP et traite la réponse dans un JSP, vraiment l'architecture MVC quoi :-)
-------------------------------------------------------------
1) MonPortletJSR168 ----> Appelle un jsp form.jsp depuis doView()

protected void doView (RenderRequest request, RenderResponse response) throws PortletException, IOException {
   response.setContentType("text/html");

PortletRequestDispatcher rd = getPortletContext().getRequestDispatcher("/form.jsp");
               rd.include(request, response);
   }
-------------------------------------------------------------
2) mon JSP form.jsp s'affiche directement quand la portlet se lance :
c'est un JSP tout bête qui affiche un formulaire tout bête, j'ai fait comme vous m'avez dit : avec <portlet:defineObjects/> et form action='<%= url.toString()

<[EMAIL PROTECTED] uri="http://java.sun.com/portlet"; prefix="portlet"%>

<portlet:defineObjects />

<% PortletURL url = renderResponse.createActionURL();%>

<form action='<%= url.toString() %>' method=post>
Bonjour, Quelles sont vos connaissances de HTML ?
<input type="radio" name="choice" value="1" checked>faibles
<input type="radio" name="choice" value="2">moyennes
<input type="radio" name="choice" value="3">bonnes
<input type="submit" value="Voir le résultat!">
</form>
-------------------------------------------------------------

3) et là dans la méthode render() je fais :
public void render(RenderRequest renderRequest, RenderResponse renderResponse) throws PortletException, IOException {
if (renderRequest.getParameter("choice") != null)
PortletRequestDispatcher rd = getPortletContext().getRequestDispatcher("/view.jsp");
               rd.include(request, response);
   }

4) mon view.jsp , il n'est pas appelé, il ne s'affiche pas , j'ai un beau message d'erreur, mais j'avais mis dedans
<[EMAIL PROTECTED] uri="http://java.sun.com/portlet"; prefix="portlet"%>
<portlet:defineObjects />

<h1> Vous avez saisi : <% RenderRequest.GetParameter("choice") %>


Voila, Si vous voyez où je n'y arrive pas !
Merci beaucoup pour votre réponse,


Répondre à