Boa tarde preciso de ajuda. Não sei onde estou errando ao cadastrar o fornecedor. Poderiam apontar onde está o erro?
Segue console:
2017-11-18T21:09:14.466-0200|Informações: [EL Fine]: sql: 2017-11-18 21:09:14.466–ServerSession(201485019)–Connection(1501844121)–SELECT ID, CIDADE, CNPJ, EMAIL, ENDERECO, ESTADO, NOME, TELEFONE FROM FORNECEDOR
2017-11-18T21:09:14.512-0200|Informações: [EL Fine]: sql: 2017-11-18 21:09:14.511–ClientSession(39450789)–Connection(1501844121)–INSERT INTO NOTAFISCAL (DATA, EMISSAO, NUMERO, VALOR, VENCIMENTO, FORNECEDOR_ID) VALUES (?, ?, ?, ?, ?, ?)
bind => [2017-11-18, 17/11/2017, 1111, 22222, 11/12/2015, null]
Seguem os codigos:
<ui:composition template="/_template.xhtml">
<ui:define name="corpo">
<div id="conteudo">
<f:view transient="true" />
<h:form id="formNotaFiscal">
<fieldset>
<legend>Dados do Fornecedor</legend>
<h:outputLabel value="Escolha o Fornecedor:" />
<h:selectOneMenu value="#{notaFiscalBean.idFornecedor}">
<f:selectItems value="#{fornecedorBean.fornecedores}"
var="fornecedor" itemValue="#{fornecedor.id}"
itemLabel="#{fornecedor.nome}" />
</h:selectOneMenu>
<h:commandButton action="/fornecedor" value="Cadastrar Fornecedor" />
</fieldset>
<fieldset>
<legend>Dados da Nota Fiscal</legend>
<h:outputLabel value="Numero da Nota:" />
<h:inputText value="#{notaFiscalBean.notaFiscal.numero}" />
<h:outputLabel value="Emissão:" />
<h:inputText value="#{notaFiscalBean.notaFiscal.emissao}" />
<h:outputLabel value="Data cadastro:" />
<h:inputText value="#{notaFiscalBean.notaFiscal.data.time}">
<f:convertDateTime pattern="dd/MM/yyyy"
timeZone="America/Sao_Paulo" />
</h:inputText>
<h:outputLabel value="Vencimento:" />
<h:inputText value="#{notaFiscalBean.notaFiscal.vencimento}" />
<h:outputLabel value="Valor:" />
<h:inputText value="#{notaFiscalBean.notaFiscal.valor}" />
<h:outputLabel value="Situação:" />
</fieldset>
<h:commandButton value="Gravar" action="#{notaFiscalBean.gravar}" />
</h:form>
<h2>Notas Fiscais</h2>
<h:form id="listaNotasFiscais">
<h:dataTable value="#{notaFiscalBean.notasfiscais}" var="notaFiscal"
styleClass="dados" rowClasses="impar,par">
<h:column>
<f:facet name="header">Numero da Nota</f:facet>
#{notaFiscal.numero}
</h:column>
<h:column>
<f:facet name="header">Data Emissão</f:facet>
#{notaFiscal.emissao}
</h:column>
<h:column>
<f:facet name="header">Fornecedor</f:facet>
#{notaFiscal.fornecedor.nome}
</h:column>
<h:column>
<f:facet name="header">Valor</f:facet>
<h:outputText value="#{notaFiscal.valor}">
<f:convertNumber type="currency" currencySymbol="R$ "
locale="pt_BR" />
</h:outputText>
</h:column>
<h:column>
<f:facet name="header">Vencimento</f:facet>
#{notaFiscal.vencimento}
</h:column>
<h:column>
<f:facet name="header">Situação</f:facet>
</h:column>
</h:dataTable>
</h:form>
</div>
</ui:define>
</ui:composition>
</html>
@Named @ViewScoped
public class NotaFiscalBean implements Serializable{
private static final long serialVersionUID = 1L;
private NotaFiscal notaFiscal = new NotaFiscal();
private List<NotaFiscal> notasfiscais;
@Inject
private NotaFiscalDao notaFiscalDao;
private Long idFornecedor;
public void gravar() {
notaFiscalDao.adiciona(notaFiscal);
this.notaFiscal = new NotaFiscal();
idFornecedor = null;
}
public Long getIdFornecedor() {
return idFornecedor;
}
public void setIdFornecedor(Long idFornecedor) {
this.idFornecedor = idFornecedor;
}
public NotaFiscalDao getNotaFiscalDao() {
return notaFiscalDao;
}
public void setNotaFiscalDao(NotaFiscalDao notaFiscalDao) {
this.notaFiscalDao = notaFiscalDao;
}
public void setNotaFiscal(NotaFiscal notaFiscal) {
this.notaFiscal = notaFiscal;
}
public NotaFiscal getNotaFiscal() {
return notaFiscal;
}
public List<NotaFiscal> getNotasfiscais() {
if (notasfiscais == null) {
System.out.println("Carregando notas fiscais...");
notasfiscais = notaFiscalDao.listaTodos();
}
return notasfiscais;
}
public void setNotasfiscais(List<NotaFiscal> notasfiscais) {
this.notasfiscais = notasfiscais;
}
}
@Entity
public class NotaFiscal implements Serializable{
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Long id;
private String emissao;
private String numero;
private String vencimento;
private String valor;
private Fornecedor fornecedor;
@Temporal(TemporalType.DATE)
private Calendar data = Calendar.getInstance();
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public Calendar getData() {
return data;
}
public void setData(Calendar data) {
this.data = data;
}
public String getNumero() {
return numero;
}
public void setNumero(String numero) {
this.numero = numero;
}
public String getVencimento() {
return vencimento;
}
public void setVencimento(String vencimento) {
this.vencimento = vencimento;
}
public String getValor() {
return valor;
}
public void setValor(String valor) {
this.valor = valor;
}
public String getEmissao() {
return emissao;
}
public void setEmissao(String emissao) {
this.emissao = emissao;
}
public String getNotaFiscal() {
return emissao;
}
public Fornecedor getFornecedor() {
return fornecedor;
}
public void setFornecedor(Fornecedor fornecedor) {
this.fornecedor = fornecedor;
}
}