Advertisement
tadeuespindola

Untitled

Feb 21st, 2021
867
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.54 KB | None | 0 0
  1. <!-- Correção dos combos na página primeirapagina.xhtml -->
  2.  
  3. <h:outputLabel value="Estados:"/>
  4. <h:selectOneMenu value="#{pessoaBean.pessoa.estados}" immediate="true" id="comboEstado" converter="estadoConverter">
  5.     <f:selectItem itemLabel="--[Selecione]--" noSelectionOption="true"/>
  6.     <f:selectItems value="#{pessoaBean.estados}"/>
  7.     <f:ajax event="change" execute="@this" listener="#{pessoaBean.carregaCidades}" render="comboCidade"/>
  8. </h:selectOneMenu>
  9.        
  10. <h:outputLabel value="Cidades:"/>
  11. <h:selectOneMenu value="{pessoaBean.pessoa.cidades}" immediate="true" id="comboCidade" converter="cidadeConverter">
  12.     <f:selectItem noSelectionOption="true"  itemLabel="--[Selecione]--"/>
  13.     <f:selectItems value="#{pessoaBean.cidades}"/>
  14. </h:selectOneMenu>
  15.  
  16. // ----------------------------------------- Correção Cidades Converter ------------------------------------------
  17. package br.com.converter;
  18.  
  19. import java.io.Serializable;
  20.  
  21. import javax.faces.component.UIComponent;
  22. import javax.faces.context.FacesContext;
  23. import javax.faces.convert.Converter;
  24. import javax.faces.convert.FacesConverter;
  25. import javax.persistence.EntityManager;
  26. import javax.persistence.EntityTransaction;
  27.  
  28. import br.com.entidades.Cidades;
  29. import br.com.jpautil.JPAUtil;
  30.  
  31. @FacesConverter(forClass = Cidades.class, value = "cidadeConverter")
  32. public class CidadesConverter implements Converter, Serializable {
  33.  
  34.     private static final long serialVersionUID = 6320202225365269871L;
  35.  
  36.     @Override /* Retorna objeto inteiro */
  37.     public Object getAsObject(FacesContext context, UIComponent component, String codigoCidade) {
  38.         EntityManager entityManager = JPAUtil.getEntityManager();
  39.         EntityTransaction entityTransaction = entityManager.getTransaction();
  40.         entityTransaction.begin();
  41.         return entityManager.find(Cidades.class, Long.parseLong(codigoCidade));
  42.     }
  43.  
  44.     @Override /* Retorna apenas o código em String */
  45.     public String getAsString(FacesContext context, UIComponent component, Object cidade) {
  46.  
  47.         if (cidade == null) {
  48.             return null;
  49.         }
  50.  
  51.         if (cidade instanceof Cidades) {
  52.             return ((Cidades) cidade).getId().toString();
  53.         } else {
  54.             return cidade.toString();
  55.         }
  56.     }
  57. }
  58.  
  59. // ----------------------------------------- Correção EstadosConverter ------------------------------------------
  60. package br.com.converter;
  61.  
  62. import java.io.Serializable;
  63.  
  64. import javax.faces.component.UIComponent;
  65. import javax.faces.context.FacesContext;
  66. import javax.faces.convert.Converter;
  67. import javax.faces.convert.FacesConverter;
  68. import javax.persistence.EntityManager;
  69. import javax.persistence.EntityTransaction;
  70.  
  71. import br.com.entidades.Estados;
  72. import br.com.jpautil.JPAUtil;
  73.  
  74. @FacesConverter(forClass = Estados.class, value = "estadoConverter")
  75. public class EstadoConverter implements Converter, Serializable {
  76.  
  77.     private static final long serialVersionUID = 6320202225365269871L;
  78.  
  79.     @Override /* Retorna objeto inteiro */
  80.     public Object getAsObject(FacesContext context, UIComponent component, String codigoEstado) {
  81.         EntityManager entityManager = JPAUtil.getEntityManager();
  82.         EntityTransaction entityTransaction = entityManager.getTransaction();
  83.         entityTransaction.begin();
  84.         return entityManager.find(Estados.class, Long.parseLong(codigoEstado));
  85.     }
  86.  
  87.     @Override /* Retorna apenas o código em String */
  88.     public String getAsString(FacesContext context, UIComponent component, Object estado) {
  89.  
  90.         if (estado == null) {
  91.             return null;
  92.         }
  93.  
  94.         if (estado instanceof Estados) {
  95.             return ((Estados) estado).getId().toString();
  96.         } else {
  97.             return estado.toString();
  98.         }
  99.     }
  100. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement