Olá a todos, estou estudando portlets, e eu ultilizo o eclipse como IDE, e o Jboss Portal como meu portal, e o meu problema é o seguinte:
Tenho uma interface para receber dados e outra para saidar dados, te eu tenho 4 paginas ( Home, A , B, C) na Home eu tenho as duas interfaces, na A tenho so a de saida, na B tenho as duas e na C tenho a de entrada.
Bom se eu digito na pagina home ou na pagina B a entrada, em todas as paginas que tem a saida a saida fica editada.. mas se eu digito na pagina C nem uma das minhas saidas ficam editadas
gostaria de saber oque estou fazendo de errado no evento, por nao estar dando certo, Obrigado a todos
segue o codigo....
P1package org.combo;
import java.io.IOException;
import java.io.PrintWriter;
import javax.portlet.GenericPortlet;
import javax.portlet.PortletException;
import javax.portlet.PortletConfig;
import javax.portlet.PortletRequestDispatcher;
import javax.portlet.RenderRequest;
import javax.portlet.RenderResponse;
import javax.portlet.ActionRequest;
import javax.portlet.ActionResponse;
import javax.portlet.UnavailableException;
import javax.portlet.EventPortlet;
public class P1 extends GenericPortlet {
public void init(PortletConfig portletConfig) throws UnavailableException,
PortletException {
super.init(portletConfig);
}
public void doView(RenderRequest request, RenderResponse response) throws PortletException, IOException {
// set return content type
response.setContentType("text/html");
//String aux= (String) request.getParameter("name");
PortletRequestDispatcher reqDispatcher = getPortletContext().getRequestDispatcher("/WEB-INF/jsp/entrada.jsp");
reqDispatcher.include(request, response);
}
public void processAction(ActionRequest actionRequest, ActionResponse actionResponse) throws PortletException, IOException, UnavailableException
{
String escolha = (String) actionRequest.getParameter("retorno");
actionResponse.setEvent("comboEvent", escolha);
}
}
package org.combo;
import java.io.IOException;
import java.io.PrintWriter;
import javax.portlet.Event;
import javax.portlet.EventRequest;
import javax.portlet.EventResponse;
import javax.portlet.GenericPortlet;
import javax.portlet.PortletException;
import javax.portlet.PortletConfig;
import javax.portlet.PortletRequestDispatcher;
import javax.portlet.RenderRequest;
import javax.portlet.RenderResponse;
import javax.portlet.ActionRequest;
import javax.portlet.ActionResponse;
import javax.portlet.UnavailableException;
import javax.portlet.EventPortlet;
public class P2 extends GenericPortlet {
protected void doView(RenderRequest request, RenderResponse response)throws PortletException, IOException, UnavailableException {
//request.setAttribute("leitura", dado);
PortletRequestDispatcher reqDispatcher2 = getPortletContext().getRequestDispatcher("/WEB-INF/jsp/saida.jsp");
reqDispatcher2.include(request, response);
}
public void processEvent(EventRequest request, EventResponse response) throws PortletException, IOException {
Event sampleEvent = request.getEvent();
if(sampleEvent.getName().toString().equals("comboEvent")) {
request.setAttribute("leitura", (String) sampleEvent.getValue());
}
}
}
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<%@ taglib uri="http://java.sun.com/portlet_2_0" prefix="portlet" %>
<portlet:defineObjects/>
<div align="center">
---------------------------TesteCombo--------------------------------------
<br/><br/>
<form action="<portlet:actionURL><portlet:param name="page" value="mainview"/></portlet:actionURL>" method="POST">
<input type="text" name="retorno" value="digite seu nome"/>
<input type="hidden" id="retorno" name="assunto" value=""/>
<select class="selectBusca" id="retorno">
<option value="LA">Los Angeles</option>
<option value="DL">Dallas</option>
<option value="MI">Miami</option>
</select>
<input type="submit">
</form>
<br/>
-------------------------------------------------------------------------
---------------------------------------
</div>
</body>
</html>
<%@ taglib uri="http://java.sun.com/portlet_2_0" prefix="portlet" %>
<portlet:defineObjects/>
<div align="center">
Ola, <%= renderRequest.getAttribute("leitura") %>! <br>
Welcome!
<br/>
</div>
<?xml version="1.0" encoding="UTF-8"?>
<portlet-app
xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd"
version="2.0">
<portlet>
<portlet-name>P1</portlet-name>
<display-name>P1</display-name>
<portlet-class>org.combo.P1</portlet-class>
<supports>
<mime-type>text/html</mime-type>
<portlet-mode>VIEW</portlet-mode>
</supports>
<portlet-info>
<title>P1</title>
</portlet-info>
<supported-publishing-event>
<name>comboEvent</name>
</supported-publishing-event>
</portlet>
<portlet>
<portlet-name>P2</portlet-name>
<display-name>P2</display-name>
<portlet-class>org.combo.P2</portlet-class>
<supports>
<mime-type>text/html</mime-type>
<portlet-mode>VIEW</portlet-mode>
</supports>
<portlet-info>
<title>P2</title>
</portlet-info>
<supported-processing-event>
<name>comboEvent</name>
</supported-processing-event>
</portlet>
<event-definition>
<name>comboEvent</name>
<value-type>java.lang.String</value-type>
</event-definition>
</portlet-app>
