package gcom.gui.micromedicao; import gcom.fachada.Fachada; import gcom.gui.ActionServletException; import gcom.gui.GcomAction; import java.util.Collection; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; public class ExibirConsultarColetaMedidorEnergiaAction extends GcomAction { public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { //Seta o caminho de retorno ActionForward retorno = actionMapping.findForward("exibirConsultarColetaMedidorEnergia"); //Recupera os par�metros da sess�o para ser efetuada a pesquisa ColetaMedidorEnergiaHelper helper = (ColetaMedidorEnergiaHelper)httpServletRequest.getAttribute("helper"); FiltrarColetaMedidorEnergiaActionForm form = (FiltrarColetaMedidorEnergiaActionForm) actionForm; // Obt�m a inst�ncia da fachada Fachada fachada = Fachada.getInstancia(); //Mudar isso quando tiver esquema de seguran�a HttpSession sessao = httpServletRequest.getSession(false); //Integer qtdImoveis = fachada.countColetaMedidorEnergia(helper); Collection colecaoColetaMedidorEnergia = (Collection) fachada.pesquisarColetaMedidorEnergia(helper); if (colecaoColetaMedidorEnergia != null && !colecaoColetaMedidorEnergia.isEmpty()) { // pega os dados do retorno e passa pela sess�o para ser exibido na tela ColetaMedidorEnergiaHelper helper1 = (ColetaMedidorEnergiaHelper) colecaoColetaMedidorEnergia.iterator().next(); form.setDescricaoEmpresa(helper1.getDescricaoEmpresa()); form.setFaturamentoGrupo(helper1.getFaturamentoGrupo()); form.setIdLocalidade(helper1.getLocalidadeId()); form.setCodigoSetorComercial( helper1.getSetorComercialId()); form.setRota( helper1.getRotaId()); //Verifica se a cole��o retornada pela pesquisa � nula sessao.setAttribute( "colecaoColetaMedidorEnergia", colecaoColetaMedidorEnergia); } else { // Caso a pesquisa n�o retorne nenhum objeto comunica ao usu�rio; throw new ActionServletException("atencao.pesquisa.nenhumresultado"); } return retorno; } }