Bom dia a todos. Bem já tentei de várias formas entender a implementação do check box na datatable, mais está impossível. O que existe no showcase peguei ele mais na hora de entrar no metodo construtor ele simplesmente não entra para popular a lista, mais pelo menos renderiza o datatable vazio. Agora na minha aplicação que estou tentando implementar isso simplesmente mostra página em branco e com seguinte erro no glassfish 3:
SEVERE: Error Rendering View[/formLote.xhtml]
javax.faces.FacesException: DataModel must implement org.primefaces.model.SelectableDataModel when selection is enabled.
at org.primefaces.component.datatable.DataTable.getRowKeyFromModel(DataTable.java:780)
at org.primefaces.component.datatable.DataTableRenderer.encodeRow(DataTableRenderer.java:661)
at org.primefaces.component.datatable.DataTableRenderer.encodeTbody(DataTableRenderer.java:601)
at org.primefaces.component.datatable.DataTableRenderer.encodeRegularTable(DataTableRenderer.java:220)
at org.primefaces.component.datatable.DataTableRenderer.encodeMarkup(DataTableRenderer.java:192)
at org.primefaces.component.datatable.DataTableRenderer.encodeEnd(DataTableRenderer.java:74)
at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:875)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1764)
at javax.faces.render.Renderer.encodeChildren(Renderer.java:168)
at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1757)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1760)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1760)
at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:402)
at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:288)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:121)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:594)
at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1550)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:343)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
at br.com.wgs.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:64)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:161)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:331)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:231)
at com.sun.enterprise.v3.services.impl.ContainerMapper$AdapterCallable.call(ContainerMapper.java:317)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:195)
at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:860)
at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:757)
at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1056)
at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:229)
at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
at java.lang.Thread.run(Thread.java:722)
Nesse erro e pelo exemplo fala para fazer uma classe implementando um SelectableDataModel e segue ele abaixo:
[code]package br.com.wgs.model;
import java.util.List;
import javax.faces.model.ListDataModel;
import org.primefaces.model.SelectableDataModel;
/**
*
-
@author Lesliê Cardoso da Silva
-
@since 04/05/2013
*/
public class LoteDataModel extends ListDataModel implements SelectableDataModel {public LoteDataModel(List data) {
super(data);
}@Override
public Lote getRowData(String rowKey) {
List lotes = (List) getWrappedData();for(Lote lote : lotes) { if(lote.getNumeroPatrimonio().equals(rowKey)){ return lote; } } return null;}
@Override
public Object getRowKey(Lote lote) {
return lote.getNumeroPatrimonio();
}
}[/code]
Meu Model
[code]package br.com.wgs.model;
import java.io.Serializable;
/**
*
-
@author Lesliê Cardoso da Silva
*/
public class Lote implements Serializable{
private static final long serialVersionUID = -7641485079661156472L;
private Long idLote;
private Situacao situacao;
private Item item;
private Produto produto;
private String numeroPatrimonio;public Produto getProduto() {
if(produto == null){
produto = new Produto();
}
return produto;
}public void setProduto(Produto produto) {
this.produto = produto;
}public Long getIdLote() {
if(idLote == null){
idLote = new Long(-1);
}
return idLote;
}public void setIdLote(Long idLote) {
this.idLote = idLote;
}public Situacao getSituacao() {
if(situacao == null){
situacao = new Situacao();
}
return situacao;
}public void setSituacao(Situacao situacao) {
this.situacao = situacao;
}public Item getItem() {
if(item == null){
item = new Item();
}
return item;
}public void setItem(Item item) {
this.item = item;
}public String getNumeroPatrimonio() {
if(numeroPatrimonio == null){
numeroPatrimonio = new String();
}
return numeroPatrimonio;
}public void setNumeroPatrimonio(String numeroPatrimonio) {
this.numeroPatrimonio = numeroPatrimonio;
}
}[/code]
segue meu xhtml
[code]<ui:composition xmlns=“http://www.w3.org/1999/xhtml"
xmlns:ui=“http://java.sun.com/jsf/facelets"
xmlns:h=“http://java.sun.com/jsf/html"
xmlns:p=“http://primefaces.org/ui"
xmlns:f=“http://java.sun.com/jsf/core” template=“template.xhtml”>
<ui:define name=“conteudo”>
<h:form>
<p:breadCrumb>
<p:menuitem value=“Lista de Entrada” url=“index.jsf” />
<p:menuitem value=“Lista de Entrada” url=“ListaEntrada.jsf” />
<p:menuitem value=”#{entradaController.legendaForm}” url=“formEntrada.jsf” actionListener=”#{entradaController.clear}” />
<p:menuitem value=“Patrimoniar produtos” url=“formLote.jsf” />
</p:breadCrumb>
</h:form>
<p:messages id=“msg_box” />
<h:form id=“lote” prependId=“false”>
<p:growl id=“messages” showDetail=“true”/>
<p:dataTable var="objLote" value="#{entradaController.listaLote}" id="loteList" editable="true"
selection="#{entradaController.selectedLotes}" emptyMessage="Este produto não é tombável!" >
<p:ajax event="rowEdit" listener="#{entradaController.onEdit}" update=":lote:loteList, :lote:messages"/>
<p:ajax event="rowEditCancel" listener="#{entradaController.onCancel}" update=":lote:messages" immediate="true"/>
<p:column selectionMode="multiple" style="width: 2%" />
<p:column headerText="Produto" >
<h:outputText value="#{objLote.produto.nomeProduto}"/>
</p:column>
<p:column headerText="Marca" >
<h:outputText value="#{objLote.item.marca.nomeMarca}"/>
</p:column>
<p:column headerText="Situação" style="width:125px">
<p:cellEditor>
<f:facet name="output">
<h:outputText value="#{objLote.situacao.nomeSituacao}" />
</f:facet>
<f:facet name="input">
<h:selectOneMenu value="#{objLote.situacao.idSituacao}" >
<f:selectItems value="#{entradaController.listaSituacao}"
var="objS"
itemLabel="#{objS.nomeSituacao}"
itemValue="#{objS.idSituacao}" />
</h:selectOneMenu>
</f:facet>
</p:cellEditor>
</p:column>
<p:column headerText="Patrimonio" style="width:125px">
<p:cellEditor>
<f:facet name="output">
<h:outputText value="#{objLote.numeroPatrimonio}" />
</f:facet>
<f:facet name="input">
<p:inputText value="#{objLote.numeroPatrimonio}" style="width:100%" label="Patrimonio"/>
</f:facet>
</p:cellEditor>
</p:column>
<p:column headerText="Ações" style="width:50px">
<p:rowEditor />
</p:column>
</p:dataTable>
<br/><br/><br/>
</h:form>
</div>
</ui:define>
</ui:composition>[/code]
Meu Bean
[code]package br.com.wgs.controller;
import br.com.wgs.dao.EntradaDAO;
import br.com.wgs.dao.LoteDAO;
import br.com.wgs.dao.MarcaDAO;
import br.com.wgs.dao.ProdutoDAO;
import br.com.wgs.dao.SituacaoDAO;
import br.com.wgs.model.Entrada;
import br.com.wgs.model.Item;
import br.com.wgs.model.Lote;
import br.com.wgs.model.LoteDataModel;
import br.com.wgs.model.Marca;
import br.com.wgs.model.PessoaJuridica;
import br.com.wgs.model.Produto;
import br.com.wgs.model.Situacao;
import br.com.wgs.util.ExceptionDatabase;
import br.com.wgs.util.ExceptionMessage;
import br.com.wgs.validator.EntradaValidator;
import br.com.wgs.validator.ItemValidator;
import br.com.wgs.validator.LoteValidator;
import java.io.Serializable;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.FacesContext;
import javax.faces.event.ActionEvent;
import javax.faces.validator.ValidatorException;
import org.primefaces.event.RowEditEvent;
import org.primefaces.model.LazyDataModel;
import org.primefaces.model.SortOrder;
/**
*
-
@author Lesliê Cardoso da Silva
*/
@ManagedBean
@SessionScoped
public class EntradaController implements Serializable {private static final long serialVersionUID = 3504095753892633853L;
private Entrada entrada;
private LazyDataModel listaEntrada;
private PessoaJuridica fornecedor;
private List listaProdutoPesquisa;
private List listaProduto;
private List listaMarca;
private List listaItem;
private List listaLote;
private List listaSituacao;
private List selectedLotes;
private LoteDataModel mediumLotesModel;
private Situacao situacao;
private Integer TRegistrosEntradaItem;
private Integer botao;
private String maxDate;
private String LegendaForm;
private Item qryItem;
private Item item;
private Integer TRegistrosEntrada;
private Produto qryProduto;
private Marca qryMarca;
private Lote lote;public List getSelectedLotes() {
if(selectedLotes == null){
selectedLotes = new ArrayList<>();
}
return selectedLotes;
}public void setSelectedLotes(List selectedLotes) {
this.selectedLotes = selectedLotes;
}public LoteDataModel getMediumLotesModel() {
return mediumLotesModel;
}public void setMediumLotesModel(LoteDataModel mediumLotesModel) {
this.mediumLotesModel = mediumLotesModel;
}public Lote getLote() {
if(lote == null){
lote = new Lote();
}
return lote;
}public void setLote(Lote lote) {
this.lote = lote;
}public Produto getQryProduto() {
if (qryProduto == null) {
qryProduto = new Produto();
}
return qryProduto;
}public void setQryProduto(Produto qryProduto) {
this.qryProduto = qryProduto;
}public Marca getQryMarca() {
if (qryMarca == null) {
qryMarca = new Marca();
}
return qryMarca;
}public void setQryMarca(Marca qryMarca) {
this.qryMarca = qryMarca;
}public Item getQryItem() {
if(qryItem ==null){
qryItem = new Item();
}
return qryItem;
}public void setQryItem(Item qryItem) {
this.qryItem = qryItem;
}public Item getItem() {
if(item ==null){
item = new Item();
}
return item;
}public void setItem(Item item) {
this.item = item;
}public List getListaLote() {
if(listaLote == null){
FacesContext mensagem = FacesContext.getCurrentInstance();
try
{
LoteDAO pEntDAO = new LoteDAO();
listaLote = pEntDAO.listaPatrimonioLote(getItem());
}
catch (ExceptionDatabase e) {
ExceptionMessage message = new ExceptionMessage(e.getMessage());
mensagem.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, message.getMessage(), null));
}
}
return listaLote;
}public void setListaLote(List listaLote) {
this.listaLote = listaLote;
}public List getListaSituacao() {
if(listaSituacao == null){
FacesContext mensagem = FacesContext.getCurrentInstance();
try
{
SituacaoDAO DAO = new SituacaoDAO();
listaSituacao = DAO.listaSituacao();
}
catch (ExceptionDatabase e) {
ExceptionMessage message = new ExceptionMessage(e.getMessage());
mensagem.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, message.getMessage(), null));
}
}
return listaSituacao;
}public void setListaSituacao(List listaSituacao) {
this.listaSituacao = listaSituacao;
}public void pesquisarProduto(ActionEvent actionEvent) throws ExceptionDatabase {
if (getQryProduto().getNomeProduto().length() < 3) {
setQryProduto(null);
FacesContext mensagem = FacesContext.getCurrentInstance();
mensagem.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_WARN, “Por favor digite pelo menos 3 caracteres para efetuar essa pesquisa!”, null));
//throw new ExceptionDatabase(“teste”);
} else {
setListaProduto(null);
}
}public void pesquisarMarca(ActionEvent actionEvent) throws ExceptionDatabase {
if (getQryMarca().getNomeMarca().length() < 3) {
setQryMarca(null);
FacesContext mensagem = FacesContext.getCurrentInstance();
mensagem.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_WARN, “Por favor digite pelo menos 3 caracteres para efetuar essa pesquisa!”, null));
//throw new ExceptionDatabase(“teste”);
} else {
setListaMarca(null);
}
}public List getListaMarca() {
if (listaMarca == null) {
FacesContext mensagem = FacesContext.getCurrentInstance();
try {
MarcaDAO DAO = new MarcaDAO();
listaMarca = DAO.listaMarca(getQryMarca());
} catch (ExceptionDatabase e) {
ExceptionMessage message = new ExceptionMessage(e.getMessage());
mensagem.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, message.getMessage(), null));
}
}
return listaMarca;
}public void setListaMarca(List listaMarca) {
this.listaMarca = listaMarca;
}public List getListaProduto() {
if (listaProduto == null) {
FacesContext mensagem = FacesContext.getCurrentInstance();
try {
ProdutoDAO DAO = new ProdutoDAO();
listaProduto = DAO.listaProduto(getQryProduto());
} catch (ExceptionDatabase e) {
ExceptionMessage message = new ExceptionMessage(e.getMessage());
mensagem.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, message.getMessage(), null));
}
}
return listaProduto;
}public void setListaProduto(List listaProduto) {
this.listaProduto = listaProduto;
}public void adicionarItem(){
Integer n = new Integer(0);
FacesContext mensagem = FacesContext.getCurrentInstance();try { getItem().setEntrada(getEntrada()); ItemValidator Val = new ItemValidator(); Val.validate(null, null, getItem()); for(Item ite:listaItem){ if(ite.getProduto().getIdProduto() == getItem().getProduto().getIdProduto() && ite.getMarca().getIdMarca() == getItem().getMarca().getIdMarca()){ n =1; mensagem.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_WARN, "O produto: "+getItem().getProduto().getNomeProduto()+" da marca: "+getItem().getMarca().getNomeMarca()+" já consta inserido nesta entrada!", null)); } } if(n == 0) { listaItem.add(getItem()); mensagem.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, "O produto: "+getItem().getProduto().getNomeProduto()+" foi adicionado com sucesso!", null)); } setQryItem(null); setQryProduto(null); setQryMarca(null); setItem(null); } catch (ValidatorException e) { mensagem.getMessageList().iterator(); }}
public void removeItem(){
FacesContext mensagem = FacesContext.getCurrentInstance();
for(int i = 0; i < listaItem.size(); i++){
if(listaItem.get(i).getProduto().getIdProduto()== getItem().getProduto().getIdProduto() &&
listaItem.get(i).getMarca().getIdMarca() == getItem().getMarca().getIdMarca()){
listaItem.remove(i);
mensagem.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, “O produto: “+getItem().getProduto().getNomeProduto()+” foi removido com sucesso!”, null)); }
}
setQryItem(null);
setQryProduto(null);
setQryMarca(null);
setItem(null);
}public String getLegendaForm() {
return LegendaForm;
}public void setLegendaForm(String LegendaForm) {
this.LegendaForm = LegendaForm;
}public String formEntrada(){
setLegendaForm(“Cadastrar entrada de produtos”);
clear();
return “actFormEntrada”;
}public String getMaxDate() {
Date data = new Date();
SimpleDateFormat formatador = new SimpleDateFormat(“dd/MM/yyyy”);
return formatador.format(data);
}public void pesquisarItem(ActionEvent actionEvent) throws ExceptionDatabase {
if (getQryItem().getProduto().getNomeProduto().length() < 3) {
setQryItem(null);
FacesContext mensagem = FacesContext.getCurrentInstance();
mensagem.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_WARN, “Por favor digite pelo menos 3 caracteres para efetuar essa pesquisa!”, null));
//throw new ExceptionDatabase(“teste”);
} else {
setListaItem(null);
}
}public List getListaItem() {
if (listaItem == null) {
FacesContext mensagem = FacesContext.getCurrentInstance();
try {
EntradaDAO DAO = new EntradaDAO();
listaItem = DAO.listaItem(getEntrada(), getQryItem());
} catch (ExceptionDatabase e) {
mensagem.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, e.getMessage(), null));
}
}
return listaItem;
}public void setListaItem(List listaItem) {
this.listaItem = listaItem;
}public Integer getTRegistrosEntradaItem() {
if (TRegistrosEntradaItem == null) {
try {
EntradaDAO DAO = new EntradaDAO();
setTRegistrosEntradaItem(DAO.ListaEntradaItemCount(getEntrada()));
} catch (ExceptionDatabase e) {
TRegistrosEntradaItem = new Integer(0);
}} return TRegistrosEntradaItem;}
public void setTRegistrosEntradaItem(Integer TRegistrosEntradaItem) {
this.TRegistrosEntradaItem = TRegistrosEntradaItem;
}public void setMaxDate(String maxDate) {
this.maxDate = maxDate;
}public PessoaJuridica getFornecedor() {
return fornecedor;
}public void setFornecedor(PessoaJuridica fornecedor) {
this.fornecedor = fornecedor;
}public void modEdicao() {
setBotao(1);
}public Integer getBotao() {
if (botao == null) {
botao = new Integer(0);
}
return botao;
}public void setBotao(Integer botao) {
this.botao = botao;
}public Entrada getEntrada() {
if (entrada == null) {
entrada = new Entrada();
}
return entrada;
}public void setEntrada(Entrada entrada) {
this.entrada = entrada;
}public LazyDataModel getListaEntrada() {
if (listaEntrada == null) {
listaEntrada = new LazyDataModel() {
@Override
public List load(int first, int pageSize, String string, SortOrder so, Map<String, String> map) {
FacesContext mensagem = FacesContext.getCurrentInstance();
try
{
EntradaDAO DAO = new EntradaDAO();
List ps = DAO.listaEntrada(first,pageSize);
if(ps.isEmpty()){
mensagem.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_WARN,“Antes de tentar realizar este cadastro verifique se existe o produtos cadastrados sistema”, null));
}
return ps;
}
catch (ExceptionDatabase e) {
return null;
}
}
};
listaEntrada.setPageSize(10);
listaEntrada.setRowCount(getTRegistrosEntrada());
}
return listaEntrada;
}public void setListaEntrada(LazyDataModel listaEntrada) {
this.listaEntrada = listaEntrada;
}public Integer getTRegistrosEntrada() {
if(TRegistrosEntrada == null)
{
try
{
EntradaDAO DAO = new EntradaDAO();
setTRegistrosEntrada(DAO.ListaEntradaCount());
}
catch (ExceptionDatabase e) {
TRegistrosEntrada = new Integer(0);
}} return TRegistrosEntrada;}
public void setTRegistrosEntrada(Integer TRegistrosEntrada) {
this.TRegistrosEntrada = TRegistrosEntrada;
}public void clear() {
setItem(null);
setQryItem(null);
setQryMarca(null);
setQryProduto(null);
setEntrada(null);
setListaItem(null);
setListaEntrada(null);
}public String formLote() {
setListaLote(null);
return “actFormLote”;
}public String formEntradaItem() {
setListaItem(null);
return “actFormEntradaItem”;
}public String formEntradaEditar() {
setLegendaForm(“Editar entrada de produtos”);
setListaItem(null);
setQryItem(null);
setQryMarca(null);
setQryProduto(null);
return “actFormEntrada”;
}public void onEdit(RowEditEvent event) {
FacesContext mensagem = FacesContext.getCurrentInstance(); setLote((Lote)event.getObject()); try { LoteValidator pEntVal = new LoteValidator(); pEntVal.validate(null, null, getLote()); LoteDAO pEntDAO = new LoteDAO(); pEntDAO.update(getLote()); setLote(null); //setListaLote(null); FacesMessage msg = new FacesMessage("Produto alterado com sucesso!", "Número do patrimônio: "+((Lote) event.getObject()).getNumeroPatrimonio()); FacesContext.getCurrentInstance().addMessage(null, msg); } catch (ExceptionDatabase e) { getLote().setIdLote(null); ExceptionMessage message = new ExceptionMessage(e.getMessage()); mensagem.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, message.getMessage(), null)); } catch (ValidatorException e) { mensagem.getMessageList().iterator(); }}
public void onCancel(RowEditEvent event) {
FacesMessage msg = new FacesMessage(“Cancelado a edição do patrimônio!”, ((Lote) event.getObject()).getNumeroPatrimonio());
FacesContext.getCurrentInstance().addMessage(null, msg);
}public String insert() {
FacesContext mensagem = FacesContext.getCurrentInstance();
try {
getEntrada().setListaItem(getListaItem());
EntradaValidator pEntVal = new EntradaValidator();
pEntVal.validate(null, null, getEntrada());EntradaDAO pEntDAO = new EntradaDAO(); pEntDAO.insert(getEntrada(),getListaItem()); setListaEntrada(null); mensagem.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, "Código da entrada: " + getEntrada().getIdEntrada() + ", foi inserida com sucesso!", null)); setEntrada(null); setTRegistrosEntrada(null); return "actListaEntrada"; } catch (ExceptionDatabase e) { getEntrada().setIdEntrada(null); mensagem.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, e.getMessage(), null)); return null; } catch (ValidatorException e) { mensagem.getMessageList().iterator(); return null; }}
public String update() {
FacesContext mensagem = FacesContext.getCurrentInstance();
try {
getEntrada().setListaItem(getListaItem());
EntradaValidator pEntVal = new EntradaValidator();
pEntVal.validate(null, null, getEntrada());EntradaDAO pEntDAO = new EntradaDAO(); pEntDAO.update(getEntrada(),getListaItem()); setListaEntrada(null); mensagem.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, "Entrada: " + getEntrada().getIdEntrada() + ", foi atualizada com sucesso!", null)); setEntrada(null); setTRegistrosEntrada(null); setBotao(0); return "actListaEntrada"; } catch (ExceptionDatabase e) { getEntrada().setIdEntrada(null); mensagem.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, e.getMessage(), null)); return null; } catch (ValidatorException e) { mensagem.getMessageList().iterator(); return null; }}
public void delete() {
FacesContext mensagem = FacesContext.getCurrentInstance();
try {
EntradaDAO pEntDAO = new EntradaDAO();
pEntDAO.delete(getEntrada());
mensagem.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, "Entrada: " + getEntrada().getIdEntrada() + “, foi excluída com sucesso!”, null));
setEntrada(null);
setListaEntrada(null);
} catch (ExceptionDatabase e) {
getEntrada().setIdEntrada(null);
mensagem.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, e.getMessage(), null));
}
}public String finalizar(){
FacesContext mensagem = FacesContext.getCurrentInstance();
try {
if(getEntrada().getIdEntrada() > 0)
{
EntradaDAO pEntDAO = new EntradaDAO();
pEntDAO.finalizar(getEntrada(), getListaItem());
mensagem.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, "Entrada: " + getEntrada().getNumeroNF() + “, foi Finalizada com sucesso!”, null));
setListaEntrada(null);
setBotao(0);
}
return “actListaEntrada”;
} catch (ExceptionDatabase e) {
getEntrada().setIdEntrada(null);
mensagem.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, e.getMessage(), null));
return null;
} catch (ValidatorException e) {
mensagem.getMessageList().iterator();
return null;
}
}
}[/code]