sexta-feira, 30 de novembro de 2007

Criar formulário com Jtable populado de uma classe com JPA

1.Criar o Jframe (ou similar)
2.Inserir o Jtable
3.Inserir o componente EntityManager
4.Inserir o componente Query, relacionar com o EntityManager inserido anteriormente e preencher a propriedade query com o select no formato jpa, exemplo: SELECT c FROM Clientes c
5.Inserir o componente List e relacionar com o componente Query, marque também a propriedade Observable como true
6.Selecione a opção Bind/Elements do Jtable (clicando com o botão direito sobre o componente)
7.Na opção Bind Source relacione com o componente List e clique no botão Ok
8.Clique novamente com o botão direito sobre o Jtable e selecione a opção Table Contents, na guia Table Model com a opção Bound selecionada, relacione o campo Bind Source com o componente List
9.Acesse a guia Columns e adicione as colunas necessárias, informando no campo Expression da seguinte forma, exemplo: ${codigo} ou ${nomeCompleto}, o nome do campo segue o mesmo padrão utilizado pelo JPA, clique no botão Close.

E caso você ainda não saiba, pode dar um get dos dados persistidos assim:

int codigo = ((Clientes)list1.get(jTable1.getSelectedRow())).getCodigo();
String nomeCompleto = ((Clientes)list1.get(jTable1.getSelectedRow())).getNomeCompleto();

Formatar campo JformattedTextField com uma máscara

http://javafree.org/javabb/viewtopic.jbb?t=9220#52048

Resolver problema de conexão do sistema web com o banco de dados

Ao tentar executar um webapplication com conexão com banco de dados, em uma tela de login por exemplo, ocorre erro de conexão, para resolver esse problema basta (estou utilizando MySQL):

copiar do diretório:

\ide8\modules\ext\mysql-connector-java--bin.jar

para o diretório:

\domains\{domain_name}\lib\

Esta dica foi retirada do site netbeans.org (inssue 119278)


Outra coisa, mesmo eu tentando fazer a conexão com o banco de dados MySQL e esse driver estando no diretório indicando acima não foi possível realizar a conexão, por que? Simplesmente por que é necessário que o arquivo derbyclient.jar esteja lá também... vai entender....(????), mas basta inserir esse arquivo (derbyclient.jar) no diretório \domains\{domain_name}\lib\ que tudo funciona.

Bind de campo texto com tipo de dado data

Clicar com o botão direito sobre o componente e escolher a opção propriedades, clicar na opção “Binding” e fazer o bind com a propriedade value (e não text), o resto é igual como se estivesse utilizando a propriedade text.