gepeppe
19-02-2010, 11:40
Salve, stò sviluppando una portlet, e vorrei creare, in una pagina jsp, un form con un tasto INVIO. Quindi devo creare un actionURL in modo tale che questo punti alla mia portlet.
NElla portlet, e precisamente nel metodo processAction eseguo solo dei semplici comandi. Questa è la mia implementazione FUNZIONANTE senza pagina JSP:
public void processAction(ActionRequest request, ActionResponse response) throws PortletException,IOException {
//semplice controllo per capire da quale form viene la richiesta
String COMMAND = request.getParameter("COMMAND");
if("primo".equals(COMMAND)){
//funzione generica, già testata e funzionante
funziona();
}
}
public void doView(RenderRequest request,RenderResponse response) throws PortletException,IOException {
PortletURL link = response.createActionURL();
//questa riga mi dice che il parametro command associato a questo form ha valore "primo"
link.setParameter("COMMAND", "primo");
Writer writer = response.getWriter();
writer.write("<form action=");
writer.write("\"");
writer.write(link.toString());
writer.write("\"");
writer.write("method=POST enctype=\"multipart/form-data\">");
writer.write("<input type=submit value=OK name=okButton_1 />");
writer.write("</form>");
}
Questo è il codice funzionante. Io vorrei che il codice presente nella doView venga spostato nella JSP... Quindi all'interno della doView andrà solo questo codice:
response.setContentType("text/html");
PortletRequestDispatcher dispatcher = getPortletContext().getRequestDispatcher("/WEB-INF/jsp/WebApplication1_view.jsp");
dispatcher.include(request, response);
Ma nella JSP cosa devo mettere???..ho visto alcuni siti internet, ma non funziona...
grazie
NElla portlet, e precisamente nel metodo processAction eseguo solo dei semplici comandi. Questa è la mia implementazione FUNZIONANTE senza pagina JSP:
public void processAction(ActionRequest request, ActionResponse response) throws PortletException,IOException {
//semplice controllo per capire da quale form viene la richiesta
String COMMAND = request.getParameter("COMMAND");
if("primo".equals(COMMAND)){
//funzione generica, già testata e funzionante
funziona();
}
}
public void doView(RenderRequest request,RenderResponse response) throws PortletException,IOException {
PortletURL link = response.createActionURL();
//questa riga mi dice che il parametro command associato a questo form ha valore "primo"
link.setParameter("COMMAND", "primo");
Writer writer = response.getWriter();
writer.write("<form action=");
writer.write("\"");
writer.write(link.toString());
writer.write("\"");
writer.write("method=POST enctype=\"multipart/form-data\">");
writer.write("<input type=submit value=OK name=okButton_1 />");
writer.write("</form>");
}
Questo è il codice funzionante. Io vorrei che il codice presente nella doView venga spostato nella JSP... Quindi all'interno della doView andrà solo questo codice:
response.setContentType("text/html");
PortletRequestDispatcher dispatcher = getPortletContext().getRequestDispatcher("/WEB-INF/jsp/WebApplication1_view.jsp");
dispatcher.include(request, response);
Ma nella JSP cosa devo mettere???..ho visto alcuni siti internet, ma non funziona...
grazie