GARANTIR DESCONTO

Fórum Problemas para passar um objeto por Parametro JSF... #444172

28/05/2013

0

Pessoal sera que alguem poderia me ajudar por favoooooorrr!!!
comento que sou iniciante em sistemas Web principalmente com javaEE (ideia e trabalhar tudo com javaEE, JPA, CDI...)

mas encontro dificuldades.. a pagina eh para uma academia...
onde eu cadastro alunos e series(exercicos que eles tem que fazer), ate cadastrar beleza o problema esta em modificar estas series lembrando que eu tenho um objeto SERIE e outro SERIEDETALLES o segundo e a lista de series..

passo a pagina que contem os detalles para voces verem...

se voces observarem na parte de..



                <c:forEach var="item" items="#{serieDetalleFace.listTemporal}">
                            <tr>
                                                   <h:commandLink immediate="true" 
                                                   action="#{serieDetalleFace.doRemoveSerieDetalle}" 
                                                   value=" Excluir " />                                 
                            </tr>
                </c:forEach>



eu quero poder eliminar este item de la Lista!!!

------------------------------------------


?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns:ui="http://java.sun.com/jsf/facelets"
                template="../baseadmin.xhtml"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:c="http://java.sun.com/jsp/jstl/core">

    
    <ui:define name="title">
        Varios
    </ui:define>
    
    <ui:define name="content">
        <h2> Varios.:  #{serieDetalleFace.serie.alumno}</h2>
        <h:form>            
            <f:validateBean>        
                <h:messages/>
            <table>
                
                <tr>                
                    <td>Alumno.:</td>
                    <td><h:outputText value="#{serieDetalleFace.serie.alumno}"/></td>                
                    <br/>                    
                    <td>Numero de Series.:</td>
                    <td><h:inputText value="#{serieDetalleFace.selectedBean.nroSeries}"/></td>
                </tr>                                  
                
                
                    <tr>
                        <td>Aparato Musculacion.:</td>
                        <td><h:selectOneMenu  style="width: 150px" value="#{serieDetalleFace.selectedBean.aparatoMusculacion}">
                                <f:selectItems var="itemSel" itemLabel="#{itemSel.descripcion}" itemValue="#" value="#{serieDetalleFace.allAparatoMusculacion}"/>
                                <f:converter converterId="aparatoMusuclacionConverter"/>
                            </h:selectOneMenu>
                        </td>
                        
                        <td>Ejercicio.:</td>
                        <td><h:selectOneMenu  style="width: 150px" value="#{serieDetalleFace.selectedBean.ejercicio}">
                                <f:selectItems var="itemSel" itemLabel="#{itemSel.descripcion}" itemValue="#" value="#{serieDetalleFace.allEjercicios}"/>
                                <f:converter converterId="ejercicioConverter"/>
                            </h:selectOneMenu>
                        </td>
                    </tr>                                
                
                
                <br/>
                <br/>
           
                <c:forEach var="item" items="#{serieDetalleFace.listTemporal}">
                            <tr>
                                                   <h:commandLink immediate="true" 
                                                   action="#{serieDetalleFace.doRemoveSerieDetalle}" 
                                                   value=" Excluir " />                                 
                            </tr>
                </c:forEach>
                
                     
                

                <tr>
                    <td><center><h:commandButton action="#{serieDetalleFace.doFinishCreateSerieDetalle()}" value="Adicionar Serie Detalle " /></center></td>
                    <td><center><h:commandButton immediate="true"  action="#{serieDetalleFace.doListSerieDetalle()}" value="Cancelar" /></center></td>                    
                </tr>

            </table> 
            </f:validateBean>
        </h:form>        
    </ui:define>

</ui:composition>


Rafael Benetti

Rafael Benetti

Responder

Posts

28/05/2013

Rafael Benetti

o meu SerieDetalleFace..

package py.com.academia.face;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.enterprise.context.SessionScoped;
import javax.inject.Inject;
import javax.inject.Named;
import py.com.academia.beans.Alumno;
import py.com.academia.beans.AparatoMusculacion;
import py.com.academia.beans.Ejercicio;
import py.com.academia.beans.Serie;
import py.com.academia.beans.SerieDetalle;
import py.com.academia.session.SerieSession;


@Named
@SessionScoped  //@RequestScoped verificar
public class SerieDetalleFace extends BaseCDIBean<SerieDetalle> {

    private static final long serialVersionUID = 7L;
    @Inject
    private SerieSession bean;
    
    private Serie serie ;
    
    private Integer q  = 0 ;

    private List<SerieDetalle> list;
    
    private List<SerieDetalle> listTemporal;

    public SerieDetalleFace() 
    {       
        setSerie(new Serie());
        setSelectedBean(new SerieDetalle());
    }

    public String doEditSerieDetalle()
    {
        return "/admin/serie_detalle/edit.faces";
    }

    public String doFinishEditSerieDetalle() 
    {
        bean.setSerieDetalle(getSelectedBean());
        return doListSerieDetalle();
    }
    public String doRemoveSerieDetalle() 
    {
        
        
//        String s = (String) FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get( "parametroTeste" );  
//        log.info( s );  
//        
//        bean.removeSerieDetalle(getSelectedBean());
        return doListSerieDetalle();
    }

    public Integer posicao()
    {
        
     
        
        if( listTemporal == null )
        {
            System.out.println(" ojo Lista Temporal se Nula");            
        }
        
        if(listTemporal != null  )
        {
            System.out.println("ojo Lista Temporal no es nula  e tamanho = " + listTemporal.size() );            
        }
        
        if(listTemporal != null )
        {
            if(!listTemporal.isEmpty())
            {
                System.out.println("ojoESta vacia !!!");
                q = listTemporal.get(0).getNroSeries();
            }
        }
        
        return q;
        
    }
    
    public String doVariosSerieDetalle() 
    {               
        return "/admin/serie_detalle/varios.faces";
    }

    
    
    public String doCreateSerieDetalle() {
        setSelectedBean(new SerieDetalle());
        setSerie(new Serie());
        return "/admin/serie_detalle/add.faces";
    }

    public String doFinishCreateSerieDetalle() {
        getSelectedBean().setSerie(getSerie());
        getSelectedBean().getSerie().setFechaFin(new Date());
        getSelectedBean().getSerie().setFechaInicio(new Date());
        
        SerieDetalle sd = bean.saveSerieDetalle(getSelectedBean());
        
        setSerie(sd.getSerie());
                
        setListTemporal(new ArrayList<SerieDetalle>()) ;
                
        setListTemporal(getListaSeriesPorSerieID(getSerie()));
        
        setQ(posicao());
        
        setSelectedBean(new SerieDetalle());
        
        return doVariosSerieDetalle();
    }

    public String doListSerieDetalle() {
        list = bean.getAllSerieDetalle();
        return "/admin/serie_detalle/list.faces";
    }

    public List<Alumno> getAllAlumnos() 
    {
        return bean.getAllAlumnos();
    }            

    public List<Serie> getAllSeries() 
    {
        return bean.getAllSeries();
    }            
    
    
    public List<AparatoMusculacion> getAllAparatoMusculacion() 
    {
        return bean.getAllAparatoMusculacion();
    }                
    
    public List<Ejercicio> getAllEjercicios() 
    {
        return bean.getAllEjercicio();
    }                
    
    
    public List<SerieDetalle> getListSerieDetalle() 
    {
        return bean.getAllSerieDetalle();
    }
    
    public List<Serie> getListSerie() 
    {
        return bean.getAllSeries();
    }
        
    
    
    public List<SerieDetalle> getList() {
        return list;
    }

    public void setList(List<SerieDetalle> list) {
        this.list = list;
    }

    /**
     * @return the serie
     */
    public Serie getSerie() {
        return serie;
    }

    /**
     * @param serie the serie to set
     */
    public void setSerie(Serie serie) {
        this.serie = serie;
    }

    /**
     * @return the listTemporal
     */
    public List<SerieDetalle> getListTemporal() {
        return listTemporal;
    }

    /**
     * @param listTemporal the listTemporal to set
     */
    public void setListTemporal(List<SerieDetalle> listTemporal) {
        this.listTemporal = listTemporal;
    }

    /**
     * @return the q
     */
    public Integer getQ() {
        return q;
    }

    /**
     * @param q the q to set
     */
    public void setQ(Integer q) {
        this.q = q;
    }

    private List<SerieDetalle> getListaSeriesPorSerieID(Serie serie) 
    {
        return bean.getListSerieDetallePorSerieId(serie);
    }
    
    
    
}
Responder

Gostei + 0

28/05/2013

Rafael Benetti

ja solucionei o problema nao sei de da melhor forma se alguem chegar a ver e quiser comentar estarei grato!!!
abracos!!!

 <c:forEach var="item" items="#{serieDetalleFace.listTemporal}">
                    <tr>
                        <td>
                            <h:outputText value="#{item.id}" >  </h:outputText>
                        </td>
                        <td>
                            -               Aparato - 
                            <h:outputText value="#{item.aparatoMusculacion.descripcion}" >  </h:outputText>
                        </td>
                        <td>
                            -               Ejercicio - 
                            <h:outputText value="#{item.ejercicio.descripcion}"  >  </h:outputText>
                        </td>
                        <td>
                            -               Series - 
                            <h:outputText value="#{item.nroSeries}"  >  </h:outputText>
                        </td>    
                        <td>
                                <f:param name="id" value="#{item.id}" />
                                <h:commandLink immediate="true" 
                                action="#{serieDetalleFace.doRemoveSerieDetalle}" 
                                value="     Excluir " >                            
                            </h:commandLink>
                        </td>   
                    </tr>                        
                    
                </c:forEach>


Depois na classe Session


public String doRemoveSerieDetalle() 
    {
        
        String id = (String) FacesContext.getCurrentInstance().getExternalContext()
            .getRequestParameterMap().get("id");

        SerieDetalle sd = bean.getSerieDetalleById(Integer.valueOf(id));
        
        Integer idSerie = sd.getSerie().getId();
        
        bean.removeSerieDetalle(sd);
        
        Serie serie = bean.getSerieById(idSerie);
        
        setSerie(serie);
                
        setListTemporal(new ArrayList<SerieDetalle>()) ;
                
        setListTemporal(getListaSeriesPorSerieID(getSerie()));
        
        setSelectedBean(new SerieDetalle());
        
        return doVariosSerieDetalle();        
    }
Responder

Gostei + 0

29/09/2013

José

Já que a duvida inicial foi solucionada, estou dando o tópico por concluído.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar