Seguinte galera estou fazendo uma aplicação jsf onde eu tenho uma parte java aplication e outra jsf
a parte java aplication está dando erro toda vez que eu digito o código do produto que eu quero que seja exibido:
está é minha classe main:
eu só estou usando a opção 1 aue é para buscar o código.
antes de perguntarem todas as libs inclusive as do jsf então na pasta lib do webinf.
eu subi o web service para testar via soap
e quando eu insiro o código 1 que é o valor que eu populei o meu banco de dados com a tabela ele me volta este erro:
IWAB0135E An unexpected error has occurred.
java.net.ConnectException
Connection refused: connect
[code]package com.fiap.nac20.main;
import java.io.Serializable;
import java.text.DateFormat;
import java.text.DecimalFormat;
import java.util.Calendar;
import java.util.Scanner;
import com.fiap.nac20.bo.EstoqueBO;
import com.fiap.nac20.to.ProdutoTO;
import com.fiap.nac20.util.PropertySingleton;
public class TesteConsole implements Serializable {
private static final long serialVersionUID = 1L;
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
int codProduto = 0;
int cod = 0;
EstoqueBO estoqueBO = new EstoqueBO();
ProdutoTO produtoTO = new ProdutoTO();
DateFormat dfmt = DateFormat.getDateInstance(DateFormat.MEDIUM);
System.out.println(PropertySingleton.getInstance().get("nomeFilial") + " Data: " + dfmt.format(Calendar.getInstance().getTimeInMillis()));
System.out.println(PropertySingleton.getInstance().get("endereco"));
System.out.println();
System.out.println("*************************************************");
System.out.println();
System.out.println("Escolha uma das opções abaixo:");
System.out.println();
System.out.println("1 - Pesquisar Produto");
System.out.println("2 - Inclusão de Novo Produto");
System.out.println("3 - Remoção de um produto");;
System.out.println("4 - Listagem de Produtos");
System.out.println("0 - Encerrar a Aplicação");
System.out.println();
System.out.println();
System.out.println();
System.out.println("Digite o Código da Opção Desejada: ");
cod = entrada.nextInt();
System.out.println("*************************************************");
if (cod == 1){
System.out.print("Pesquisar Produto:");
System.out.println();
System.out.println();
System.out.println();
System.out.println("Digite o Código do Produto: ");
codProduto = Integer.parseInt(entrada.next());
System.out.println( codProduto );
produtoTO = estoqueBO.consultarProduto(codProduto);
System.out.println("Descrição do Produto: " + produtoTO.getDescricao());
DecimalFormat df = new DecimalFormat("R$ #,##0.00");
System.out.println("Preco Unitario: " + df.format(produtoTO.getPreco()));
System.out.println("Quantidade em Estoque: " + produtoTO.getQuantidade());
System.out.println("Campanha Promocional: " + produtoTO.getCampanhaPromocional());
System.out.println();
System.out.println();
System.out.println("Digite 6 para voltar ao Menu Princípal ou 0 para encerrar a aplicação");
cod = entrada.nextInt();
for (int i=0 ; i < 100 ; i++) {
System.out.println();
}
entrada.close();
}
}
[/code]
este é o codigo de erro do console:
[code]FIAP Data: 16/05/2013
Avenida Paulista
Escolha uma das opções abaixo:
1 - Pesquisar Produto
2 - Inclusão de Novo Produto
3 - Remoção de um produto
4 - Listagem de Produtos
0 - Encerrar a Aplicação
Digite o Código da Opção Desejada:
1
Pesquisar Produto:
Digite o Código do Produto:
1
1
Mai 16, 2013 1:10:45 PM org.hibernate.annotations.common.Version
INFO: HCANN000001: Hibernate Commons Annotations {4.0.1.Final}
Mai 16, 2013 1:10:45 PM org.hibernate.Version logVersion
INFO: HHH000412: Hibernate Core {4.1.9.Final}
Mai 16, 2013 1:10:45 PM org.hibernate.cfg.Environment
INFO: HHH000206: hibernate.properties not found
Mai 16, 2013 1:10:45 PM org.hibernate.cfg.Environment buildBytecodeProvider
INFO: HHH000021: Bytecode provider name : javassist
Mai 16, 2013 1:10:46 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000402: Using Hibernate built-in connection pool (not for production use!)
Mai 16, 2013 1:10:46 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000115: Hibernate connection pool size: 20
Mai 16, 2013 1:10:46 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000006: Autocommit mode: true
Mai 16, 2013 1:10:46 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000401: using driver [oracle.jdbc.OracleDriver] at URL [jdbc:oracle:thin:@localhost:1521:xe]
Mai 16, 2013 1:10:46 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000046: Connection properties: {user=Paulo, password=****, autocommit=true, release_mode=auto}
Mai 16, 2013 1:10:47 PM org.hibernate.dialect.Dialect
INFO: HHH000400: Using dialect: org.hibernate.dialect.Oracle10gDialect
Mai 16, 2013 1:10:47 PM org.hibernate.engine.transaction.internal.TransactionFactoryInitiator initiateService
INFO: HHH000268: Transaction strategy: org.hibernate.engine.transaction.internal.jdbc.JdbcTransactionFactory
Mai 16, 2013 1:10:47 PM org.hibernate.hql.internal.ast.ASTQueryTranslatorFactory
INFO: HHH000397: Using ASTQueryTranslatorFactory
Mai 16, 2013 1:10:48 PM org.hibernate.tool.hbm2ddl.SchemaValidator validate
INFO: HHH000229: Running schema validator
Mai 16, 2013 1:10:48 PM org.hibernate.tool.hbm2ddl.SchemaValidator validate
INFO: HHH000102: Fetching database metadata
Mai 16, 2013 1:10:48 PM org.hibernate.tool.hbm2ddl.TableMetadata
INFO: HHH000261: Table found: PAULO.ESTOQUE
Mai 16, 2013 1:10:48 PM org.hibernate.tool.hbm2ddl.TableMetadata
INFO: HHH000037: Columns: [preco, codigo_produto, quantidade, campanha_promocional, descricao]
Exception in thread “main” javax.persistence.PersistenceException: [PersistenceUnit: CLIENTE_ORACLE] Unable to build EntityManagerFactory
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:915)
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:890)
at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:57)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:63)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:47)
at com.fiap.nac20.dao.EntityManagerFactorySingleton.getInstance(EntityManagerFactorySingleton.java:20)
at com.fiap.nac20.bo.EstoqueBO.consultarProduto(EstoqueBO.java:17)
at com.fiap.nac20.main.TesteConsole.main(TesteConsole.java:65)
Caused by: org.hibernate.HibernateException: Missing column: codProduto in PAULO.ESTOQUE
at org.hibernate.mapping.Table.validateColumns(Table.java:370)
at org.hibernate.cfg.Configuration.validateSchema(Configuration.java:1275)
at org.hibernate.tool.hbm2ddl.SchemaValidator.validate(SchemaValidator.java:155)
at org.hibernate.internal.SessionFactoryImpl.(SessionFactoryImpl.java:506)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1750)
at org.hibernate.ejb.EntityManagerFactoryImpl.(EntityManagerFactoryImpl.java:94)
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:905)
… 7 more
[/code]
este é o meu persistence.xml
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
<persistence-unit name="CLIENTE_ORACLE">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<properties>
<property name="hibernate.show_sql" value="true"/>
<property name="hibernate.hbm2ddl.auto" value="validate"/>
<property name="hibernate.dialect" value="org.hibernate.dialect.Oracle10gDialect"/>
<property name="javax.persistence.jdbc.driver" value="oracle.jdbc.OracleDriver"/>
<property name="javax.persistence.jdbc.user" value="Paulo"/>
<property name="javax.persistence.jdbc.password" value="paulo1"/>
<property name="javax.persistence.jdbc.url" value="jdbc:oracle:thin:@localhost:1521:xe"/>
</properties>
</persistence-unit>
</persistence>
e está é minha classe de negócio:
[code]import javax.persistence.EntityManager;
import com.fiap.nac20.dao.EntityManagerFactorySingleton;
import com.fiap.nac20.dao.ProdutoDao;
import com.fiap.nac20.impl.ProdutoDaoImpl;
import com.fiap.nac20.to.ProdutoTO;
public class EstoqueBO {
public ProdutoTO consultarProduto(int codProduto) {
EntityManager em = EntityManagerFactorySingleton.getInstance().createEntityManager();
ProdutoDao produtoDAO = new ProdutoDaoImpl(em);
return produtoDAO.consultarProduto(codProduto);
}
public void adicionarProduto(ProdutoTO produtoTO) {
EntityManager em = EntityManagerFactorySingleton.getInstance().createEntityManager();
ProdutoDao produtoDAO = new ProdutoDaoImpl(em);
produtoDAO.adicionarProduto(produtoTO);
}
public ProdutoTO[] listarProdutos() {
EntityManager em = EntityManagerFactorySingleton.getInstance().createEntityManager();
ProdutoDao produtoDAO = new ProdutoDaoImpl(em);
return produtoDAO.listarProdutos();
}
public void atualizarProduto(ProdutoTO produtoTO) {
EntityManager em = EntityManagerFactorySingleton.getInstance().createEntityManager();
ProdutoDao produtoDAO = new ProdutoDaoImpl(em);
produtoDAO.atualizarProduto(produtoTO);
}
public void removerProduto(ProdutoTO produtoTO) {
EntityManager em = EntityManagerFactorySingleton.getInstance().createEntityManager();
ProdutoDao produtoDAO = new ProdutoDaoImpl(em);
produtoDAO.removerProduto(produtoTO);
}
public String[] buscarTodasDescricoes(String descricao) {
EntityManager em = EntityManagerFactorySingleton.getInstance().createEntityManager();
ProdutoDao produtoDAO = new ProdutoDaoImpl(em);
return produtoDAO.buscarTodasDescricoes(descricao);
}
}
[/code]