Vou postar as minhas classes aqui, não estou conseguindo achar onde está sendo feita a chamada da namedQuery.
ParciaisEdesImobilizadasFacade:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package br.com.celg.sessao;
import br.com.celg.entidade.ParciaisEdesImobilizadas;
import br.com.celg.sessao.interfaceFacade.ParciaisEdesImobilizadasFacadeLocal;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
/**
*
* @author paulo
*/
@Stateless
public class ParciaisEdesImobilizadasFacade extends AbstractFacade<ParciaisEdesImobilizadas> implements ParciaisEdesImobilizadasFacadeLocal {
@PersistenceContext(unitName = "SGT-SGIPU")
private EntityManager em;
@Override
protected EntityManager getEntityManager() {
return em;
}
public ParciaisEdesImobilizadasFacade() {
super(ParciaisEdesImobilizadas.class);
}
}
AbstractFacade:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package br.com.celg.sessao;
import java.util.List;
import javax.persistence.EntityManager;
/**
*
* @author paulo
*/
public abstract class AbstractFacade<T> {
private Class<T> entityClass;
public AbstractFacade(Class<T> entityClass) {
this.entityClass = entityClass;
}
protected abstract EntityManager getEntityManager();
public void create(T entity) {
getEntityManager().persist(entity);
}
public void edit(T entity) {
getEntityManager().merge(entity);
}
public void remove(T entity) {
getEntityManager().remove(getEntityManager().merge(entity));
}
public T find(Object id) {
return getEntityManager().find(entityClass, id);
}
public List<T> findAll() {
javax.persistence.criteria.CriteriaQuery cq = getEntityManager().getCriteriaBuilder().createQuery();
cq.select(cq.from(entityClass));
return getEntityManager().createQuery(cq).getResultList();
}
public List<T> findRange(int[] range) {
javax.persistence.criteria.CriteriaQuery cq = getEntityManager().getCriteriaBuilder().createQuery();
cq.select(cq.from(entityClass));
javax.persistence.Query q = getEntityManager().createQuery(cq);
q.setMaxResults(range[1] - range[0]);
q.setFirstResult(range[0]);
return q.getResultList();
}
public int count() {
javax.persistence.criteria.CriteriaQuery cq = getEntityManager().getCriteriaBuilder().createQuery();
javax.persistence.criteria.Root<T> rt = cq.from(entityClass);
cq.select(getEntityManager().getCriteriaBuilder().count(rt));
javax.persistence.Query q = getEntityManager().createQuery(cq);
return ((Long) q.getSingleResult()).intValue();
}
public List<String> findByDataGroup() {
javax.persistence.criteria.CriteriaQuery cq = getEntityManager().getCriteriaBuilder().createQuery();
cq.select(cq.from(entityClass));
return getEntityManager().createQuery(cq).getResultList();
}
}
ParciaisEdesImobilizadasFacadeLocal :
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package br.com.celg.sessao.interfaceFacade;
import br.com.celg.entidade.ParciaisEdesImobilizadas;
import java.util.List;
import javax.ejb.Local;
/**
*
* @author paulo
*/
@Local
public interface ParciaisEdesImobilizadasFacadeLocal {
void create(ParciaisEdesImobilizadas parciaisEdesImobilizadas);
void edit(ParciaisEdesImobilizadas parciaisEdesImobilizadas);
void remove(ParciaisEdesImobilizadas parciaisEdesImobilizadas);
ParciaisEdesImobilizadas find(Object id);
List<ParciaisEdesImobilizadas> findAll();
List<ParciaisEdesImobilizadas> findRange(int[] range);
List<String> findByDataGroup();
int count();
}
Entidade:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package br.com.celg.entidade;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.xml.bind.annotation.XmlRootElement;
/**
*
* @author paulo
*/
@Entity
@Table(name = "PARCIAIS_EDES_IMOBILIZADAS")
@XmlRootElement
@NamedQueries({
@NamedQuery(name = "ParciaisEdesImobilizadas.findAll", query = "SELECT p FROM ParciaisEdesImobilizadas p GROUP BY p.data"),
@NamedQuery(name = "ParciaisEdesImobilizadas.findById", query = "SELECT p FROM ParciaisEdesImobilizadas p WHERE p.id = :id"),
@NamedQuery(name = "ParciaisEdesImobilizadas.findByData", query = "SELECT p FROM ParciaisEdesImobilizadas p WHERE p.data = :data"),
@NamedQuery(name = "ParciaisEdesImobilizadas.findByDataGroup", query = "SELECT p.data FROM ParciaisEdesImobilizadas p GROUP BY p.data"),
@NamedQuery(name = "ParciaisEdesImobilizadas.findByOdex", query = "SELECT p FROM ParciaisEdesImobilizadas p WHERE p.odex = :odex"),
@NamedQuery(name = "ParciaisEdesImobilizadas.findByDescricao", query = "SELECT p FROM ParciaisEdesImobilizadas p WHERE p.descricao = :descricao"),
@NamedQuery(name = "ParciaisEdesImobilizadas.findByDataInicio", query = "SELECT p FROM ParciaisEdesImobilizadas p WHERE p.dataInicio = :dataInicio"),
@NamedQuery(name = "ParciaisEdesImobilizadas.findByDataStatusConc", query = "SELECT p FROM ParciaisEdesImobilizadas p WHERE p.dataStatusConc = :dataStatusConc"),
@NamedQuery(name = "ParciaisEdesImobilizadas.findByValor", query = "SELECT p FROM ParciaisEdesImobilizadas p WHERE p.valor = :valor"),
@NamedQuery(name = "ParciaisEdesImobilizadas.findByValorObrigEspc", query = "SELECT p FROM ParciaisEdesImobilizadas p WHERE p.valorObrigEspc = :valorObrigEspc")})
public class ParciaisEdesImobilizadas implements Serializable {
private static final long serialVersionUID = 1L;
// @Max(value=?) @Min(value=?)//if you know range of your decimal fields consider using these annotations to enforce field validation
@Id
@Basic(optional = false)
@Column(name = "ID")
private BigDecimal id;
@Column(name = "DATA")
private String data;
@Column(name = "ODEX")
private String odex;
@Column(name = "DESCRICAO")
private String descricao;
@Column(name = "DATA_INICIO")
@Temporal(TemporalType.TIMESTAMP)
private Date dataInicio;
@Column(name = "DATA_STATUS_CONC")
@Temporal(TemporalType.TIMESTAMP)
private Date dataStatusConc;
@Column(name = "VALOR")
private BigDecimal valor;
@Column(name = "VALOR_OBRIG_ESPC")
private BigDecimal valorObrigEspc;
@JoinColumn(name = "CR", referencedColumnName = "CR")
@ManyToOne
private Cr cr;
public ParciaisEdesImobilizadas() {
}
public ParciaisEdesImobilizadas(BigDecimal id) {
this.id = id;
}
public BigDecimal getId() {
return id;
}
public void setId(BigDecimal id) {
this.id = id;
}
public String getData() {
return data;
}
public void setData(String data) {
this.data = data;
}
public Date getDataInicio() {
return dataInicio;
}
public void setDataInicio(Date dataInicio) {
this.dataInicio = dataInicio;
}
public String getOdex() {
return odex;
}
public void setOdex(String odex) {
this.odex = odex;
}
public String getDescricao() {
return descricao;
}
public void setDescricao(String descricao) {
this.descricao = descricao;
}
public Date getDataStatusConc() {
return dataStatusConc;
}
public void setDataStatusConc(Date dataStatusConc) {
this.dataStatusConc = dataStatusConc;
}
public BigDecimal getValor() {
return valor;
}
public void setValor(BigDecimal valor) {
this.valor = valor;
}
public BigDecimal getValorObrigEspc() {
return valorObrigEspc;
}
public void setValorObrigEspc(BigDecimal valorObrigEspc) {
this.valorObrigEspc = valorObrigEspc;
}
public Cr getCr() {
return cr;
}
public void setCr(Cr cr) {
this.cr = cr;
}
@Override
public int hashCode() {
int hash = 0;
hash += (id != null ? id.hashCode() : 0);
return hash;
}
@Override
public boolean equals(Object object) {
// TODO: Warning - this method won't work in the case the id fields are not set
if (!(object instanceof ParciaisEdesImobilizadas)) {
return false;
}
ParciaisEdesImobilizadas other = (ParciaisEdesImobilizadas) object;
if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))) {
return false;
}
return true;
}
@Override
public String toString() {
return "br.com.celg.entidade.ParciaisEdesImobilizadas[ id=" + id + " ]";
}
}
Controller:
package br.com.celg.controlado;
import br.com.celg.entidade.ParciaisEdesImobilizadas;
import br.com.celg.controlado.util.AbstractController;
import br.com.celg.controlado.util.JsfUtil;
import br.com.celg.controlado.util.PaginationHelper;
import br.com.celg.sessao.interfaceFacade.ParciaisEdesImobilizadasFacadeLocal;
import java.util.ArrayList;
import java.util.List;
import java.io.Serializable;
import java.io.ByteArrayOutputStream;
import javax.servlet.http.HttpServletResponse;
import java.io.OutputStream;
import java.util.ResourceBundle;
import javax.annotation.PostConstruct;
import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
import javax.faces.convert.FacesConverter;
import javax.faces.model.DataModel;
import javax.faces.model.ListDataModel;
import javax.faces.model.SelectItem;
@ManagedBean(name = "parciaisEdesImobilizadasController")
@ViewScoped
public class ParciaisEdesImobilizadasController extends AbstractController implements Serializable {
private ParciaisEdesImobilizadas current;
@EJB
private br.com.celg.sessao.interfaceFacade.ParciaisEdesImobilizadasFacadeLocal ejbFacade;
@Override
public SelectItem[] getSelectItemsConsulta() {
SelectItem[] itemsLocal = new SelectItem[1];
//itemsLocal[0] = new SelectItem("id", ResourceBundle.getBundle("/Bundle").getString("CreateParciaisEdesImobilizadasTitle_id"));
//itemsLocal[0] = new SelectItem("data", ResourceBundle.getBundle("/Bundle").getString("CreateParciaisEdesImobilizadasTitle_data"));
itemsLocal[0] = new SelectItem("odex", ResourceBundle.getBundle("/Bundle").getString("CreateParciaisEdesImobilizadasTitle_odex"));
//itemsLocal[3] = new SelectItem("descricao", ResourceBundle.getBundle("/Bundle").getString("CreateParciaisEdesImobilizadasTitle_descricao"));
//itemsLocal[4] = new SelectItem("dataStatusConc", ResourceBundle.getBundle("/Bundle").getString("CreateParciaisEdesImobilizadasTitle_dataStatusConc"));
//itemsLocal[5] = new SelectItem("valor", ResourceBundle.getBundle("/Bundle").getString("CreateParciaisEdesImobilizadasTitle_valor"));
//itemsLocal[6] = new SelectItem("valorObrigEspc", ResourceBundle.getBundle("/Bundle").getString("CreateParciaisEdesImobilizadasTitle_valorObrigEspc"));
//itemsLocal[1] = new SelectItem("cr", ResourceBundle.getBundle("/Bundle").getString("CreateParciaisEdesImobilizadasTitle_cr"));
return itemsLocal;
}
public ParciaisEdesImobilizadasController() {
}
// private List<ParciaisEdesImobilizadas> listaParciaisEdes;
//
// public List<ParciaisEdesImobilizadas> getListaParciaisEdes() {
// return listaParciaisEdes;
// }
//
// public void setListaParciaisEdes(List<ParciaisEdesImobilizadas> listaParciaisEdes) {
// this.listaParciaisEdes = listaParciaisEdes;
// }
//
// @PostConstruct
// public void inicializarLista() {
// listaParciaisEdes = ejbFacade.findAll();
// }
private List<String> listaDatas;
public List<String> getListaDatas() {
return listaDatas;
}
public void setListaDatas(List<String> listaDatas) {
this.listaDatas = listaDatas;
}
@PostConstruct
public void inicializarListaData() {
listaDatas = ejbFacade.findByDataGroup();
}
public ParciaisEdesImobilizadas getSelected() {
if (current == null) {
current = new ParciaisEdesImobilizadas();
selectedItemIndex = -1;
}
return current;
}
public void setSelected(ParciaisEdesImobilizadas entidade) {
this.current = entidade;
}
private ParciaisEdesImobilizadasFacadeLocal getFacade() {
return ejbFacade;
}
public PaginationHelper getPagination() {
if (pagination == null) {
pagination = new PaginationHelper(10) {
@Override
public int getItemsCount() throws Exception {
//return getFacade().count(getConsultarPor(), getParametroConsulta());
return getFacade().count();
}
@Override
public DataModel createPageDataModel() throws Exception {
return new ListDataModel(getFacade().findRange(new int[]{getPageFirstItem(), getPageFirstItem() + getPageSize()}));
//return new ListDataModel(getFacade().findRange(new int[]{getPageFirstItem(), getPageFirstItem() + getPageSize()}, getConsultarPor(), getParametroConsulta()));
}
};
}
return pagination;
}
public String prepareView() {
current = (ParciaisEdesImobilizadas) getItems().getRowData();
selectedItemIndex = pagination.getPageFirstItem() + getItems().getRowIndex();
return "View";
}
public String prepareCreate() {
current = new ParciaisEdesImobilizadas();
selectedItemIndex = -1;
return "Create";
}
public String create() {
try {
getFacade().create(current);
JsfUtil.addSuccessMessage(ResourceBundle.getBundle("/Bundle").getString("ParciaisEdesImobilizadasCreated"));
return prepareCreate();
} catch (Exception e) {
JsfUtil.addErrorMessage(e, ResourceBundle.getBundle("/Bundle").getString("PersistenceErrorOccured"));
return null;
}
}
public String prepareEdit() {
current = (ParciaisEdesImobilizadas) getItems().getRowData();
selectedItemIndex = pagination.getPageFirstItem() + getItems().getRowIndex();
return "Edit";
}
public String update() {
try {
getFacade().edit(current);
JsfUtil.addSuccessMessage(ResourceBundle.getBundle("/Bundle").getString("ParciaisEdesImobilizadasUpdated"));
return "List";
} catch (Exception e) {
JsfUtil.addErrorMessage(e, ResourceBundle.getBundle("/Bundle").getString("PersistenceErrorOccured"));
return null;
}
}
public String destroy() {
current = (ParciaisEdesImobilizadas) getItems().getRowData();
selectedItemIndex = pagination.getPageFirstItem() + getItems().getRowIndex();
performDestroy();
recreateModel();
return "List";
}
public String destroyAndView() {
performDestroy();
recreateModel();
updateCurrentItem();
if (selectedItemIndex >= 0) {
return "View";
} else {
// all items were removed - go back to list
recreateModel();
return "List";
}
}
private void performDestroy() {
try {
getFacade().remove(current);
JsfUtil.addSuccessMessage(ResourceBundle.getBundle("/Bundle").getString("ParciaisEdesImobilizadasDeleted"));
} catch (Exception e) {
JsfUtil.addErrorMessage(e, ResourceBundle.getBundle("/Bundle").getString("PersistenceErrorOccured"));
}
}
private void updateCurrentItem() {
int count = getFacade().count();
if (selectedItemIndex >= count) {
// selected index cannot be bigger than number of items:
selectedItemIndex = count - 1;
// go to previous page if last page disappeared:
if (pagination.getPageFirstItem() >= count) {
pagination.previousPage();
}
}
if (selectedItemIndex >= 0) {
current = getFacade().findRange(new int[]{selectedItemIndex, selectedItemIndex + 1}).get(0);
}
}
@Override
public void consultar() {
try {
//getPagination().getItemsCount();
items = getPagination().createPageDataModel();
} catch (Exception ex) {
JsfUtil.addErrorMessage(ex, ResourceBundle.getBundle("/Bundle").getString("OcorreuErro"));
}
}
public void next() {
try {
getPagination().nextPage();
items = getPagination().createPageDataModel();
} catch (Exception ex) {
JsfUtil.addErrorMessage(ex, ResourceBundle.getBundle("/Bundle").getString("OcorreuErro"));
}
}
public void previous() {
try {
getPagination().previousPage();
items = getPagination().createPageDataModel();
} catch (Exception ex) {
JsfUtil.addErrorMessage(ex, ResourceBundle.getBundle("/Bundle").getString("OcorreuErro"));
}
}
public void inicio() {
try {
getPagination().startPage();
items = getPagination().createPageDataModel();
} catch (Exception ex) {
JsfUtil.addErrorMessage(ex, ResourceBundle.getBundle("/Bundle").getString("OcorreuErro"));
}
}
public void fim() {
try {
getPagination().endPage();
items = getPagination().createPageDataModel();
} catch (Exception ex) {
JsfUtil.addErrorMessage(ex, ResourceBundle.getBundle("/Bundle").getString("OcorreuErro"));
}
}
public SelectItem[] getItemsAvailableSelectMany() {
return JsfUtil.getSelectItems(ejbFacade.findAll(), false);
}
public SelectItem[] getItemsAvailableSelectOne() {
return JsfUtil.getSelectItems(ejbFacade.findAll(), true);
}
public List<ParciaisEdesImobilizadas> complete(String query) {
List<ParciaisEdesImobilizadas> results = new ArrayList<ParciaisEdesImobilizadas>();
return results;
}
public void gerarRelatorio() {
try {
ByteArrayOutputStream baos = null;
//JsfUtil.relatorio(null, null, new int[]{3, 10, 6, 6, 3, 3, 3, 4}, null, null);
HttpServletResponse response = (HttpServletResponse) FacesContext.getCurrentInstance().getExternalContext().getResponse();
response.setHeader("Expires", "0");
response.setHeader("Cache-Control", "must-revalidate, post-check=0, pre-check=0");
response.setHeader("Pragma", "public");
response.setContentType("application/pdf");
// response.setContentType("application/force-download");
response.setContentLength(baos.size());
OutputStream os = response.getOutputStream();
baos.writeTo(os);
os.flush();
os.close();
} catch (Exception ex) {
JsfUtil.addErrorMessage(ex, ResourceBundle.getBundle("/Bundle").getString("OcorreuErro"));
}
}
@FacesConverter(forClass = ParciaisEdesImobilizadas.class)
public static class ParciaisEdesImobilizadasControllerConverter implements Converter {
public Object getAsObject(FacesContext facesContext, UIComponent component, String value) {
if (value == null || value.length() == 0 || value.equals("null")) {
return null;
}
ParciaisEdesImobilizadasController controller = (ParciaisEdesImobilizadasController) facesContext.getApplication().getELResolver().
getValue(facesContext.getELContext(), null, "parciaisEdesImobilizadasController");
return controller.ejbFacade.find(getKey(value));
}
java.math.BigDecimal getKey(String value) {
java.math.BigDecimal key;
key = new java.math.BigDecimal(value);
return key;
}
String getStringKey(java.math.BigDecimal value) {
StringBuffer sb = new StringBuffer();
sb.append(value);
return sb.toString();
}
public String getAsString(FacesContext facesContext, UIComponent component, Object object) {
if (object == null) {
return null;
}
if (object instanceof ParciaisEdesImobilizadas) {
ParciaisEdesImobilizadas o = (ParciaisEdesImobilizadas) object;
return getStringKey(o.getId());
} else {
throw new IllegalArgumentException("object " + object + " is of type " + object.getClass().getName() + "; expected type: " + ParciaisEdesImobilizadasController.class.getName());
}
}
}
@FacesConverter(value = "ParciaisEdesImobilizadasConverter")
public static class ParciaisEdesImobilizadasController2Converter implements Converter {
public Object getAsObject(FacesContext facesContext, UIComponent component, String value) {
if (value == null || value.length() == 0 || value.equals("null")) {
return null;
}
ParciaisEdesImobilizadasController controller = (ParciaisEdesImobilizadasController) facesContext.getApplication().getELResolver().
getValue(facesContext.getELContext(), null, "parciaisEdesImobilizadasController");
return controller.ejbFacade.find(getKey(value));
}
java.math.BigDecimal getKey(String value) {
java.math.BigDecimal key;
key = new java.math.BigDecimal(value);
return key;
}
String getStringKey(java.math.BigDecimal value) {
StringBuffer sb = new StringBuffer();
sb.append(value);
return sb.toString();
}
public String getAsString(FacesContext facesContext, UIComponent component, Object object) {
if (object == null) {
return null;
}
if (object instanceof ParciaisEdesImobilizadas) {
ParciaisEdesImobilizadas o = (ParciaisEdesImobilizadas) object;
return getStringKey(o.getId());
} else {
throw new IllegalArgumentException("object " + object + " is of type " + object.getClass().getName() + "; expected type: " + ParciaisEdesImobilizadasController.class.getName());
}
}
}
}