Re: [java-list] ejb

2002-05-06 Por tôpico Marco Aurelio Vilela Garcia




Desculpem entrar na conversa, eu sou novo na lista 
mas estou me especializando em EJBs.

Romulo;

Sobre o CMP é muito fácil trabalhar com ele, 
entretanto ainda existem alguns problemas em configurá-los. Codificar é a parte 
mais simples. Estou mandando um código que eu mesmo fiz para um projeto. 
Observe-o como referência.

São três classes, uma interface local, uma home e a 
classe do EJB. Os campos da tabela que ele acessa são: Varchar: nome, varchar: 
descricao, float: valor, int: quantidade e int: codigo.

Observe que não há código SQL (que é configurado em 
alguma ferramenta de montagem). As funções para tratamento da lógica do negócio 
são bastante simples. Espero que ajude em alguma coisa. 

Abraços

Marco


/*** @author Marco Aurélio Vilela 
Garcia* @version Esperimental para PFC**/

package com.loja.ejbs;

import javax.ejb.*;import 
java.util.Collection;

public interface ProdutoHome extends EJBLocalHome 
{  public ProdutoLocal create(Integer 
Codigo, String Nome, String Descricao,  int Quantidade, float 
Valor) throws CreateException;  public 
ProdutoLocal findByPrimaryKey(Integer Codigo) throws 
FinderException;  public Collection findAll() 
throws FinderException;}


/*** @author Marco Aurélio Vilela 
Garcia* @version Esperimental para PFC**/

package com.loja.ejbs;

import javax.ejb.EJBLocalObject;
public interface ProdutoLocal extends 
EJBLocalObject {  public Integer 
getCodigoProduto();  public String 
getNomeProduto();  public String 
getDescricaoProduto();  public float 
getValorProduto();  public int 
getQuantidadeDisponivel();  public void 
retiraEstoque(int quant) throws Exception;  
public void reporEstoque(int quant);}


/*** @author Marco Aurélio Vilela 
Garcia* @version Esperimental para PFC**/

package com.loja.ejbs;

import javax.ejb.*;

public abstract class ProdutoEJB implements 
EntityBean { private EntityContext 
context; private int quantidadeReservada = 
0;   public 
ProdutoEJB() {}  public 
Integer ejbCreate(Integer Codigo, String Nome,String Descricao,int 
Quantidade,float Valor) throws CreateException 
{ 
 
this.setCodigo(Codigo); 
this.setDescricao(Descricao); 
this.setNome(Nome); 
this.setQuantidade(Quantidade); 
this.setValor(Valor); 
 return 
Codigo; }  
public void ejbPostCreate(Integer Codigo, String Nome,String Descricao,int 
Quantidade,float Valor) throws CreateException 
{}  public void ejbActivate() 
{}  public void ejbPassivate() 
{}  public void ejbLoad() 
{}  public void ejbStore() 
{}  public void ejbRemove() throws 
RemoveException {}  public void 
setEntityContext(EntityContext ctx) 
{ this.context = 
ctx; }  public 
void unsetEntityContext() { 
this.context = null; } 
/*== 
Métodos da lógica de 
negócio==*/ 
 public Integer 
getCodigoProduto(){ return 
this.getCodigo(); } 
 public String 
getNomeProduto(){ return 
this.getNome(); } 
 public String 
getDescricaoProduto(){ return 
this.getDescricao(); } 
 public float 
getValorProduto(){ return 
this.getValor(); } 
 public int 
getQuantidadeDisponivel(){ return 
this.getQuantidade(); } 
 public void reporEstoque(int 
quant){ int quantEstoque = 
this.getQuantidade(); 
this.setQuantidade(quantEstoque + 
quant);  
}  public void retiraEstoque(int 
quant) throws Exception{ int 
quantEstoque = 
this.getQuantidade(); 
if(quantEstoque = 
quant) 
this.setQuantidade(quantEstoque - 
quant); else throw new 
Exception("Existem apenas " + quantEstoque + " 
"+this.getNome()); }

/*== 
Métodos get e set para campos 
persistentes==*/ 
 public abstract String getNome(); 
public abstract void setNome(String Nome); 
 public abstract String 
getDescricao(); public abstract void setDescricao(String 
Descricao);  public abstract float 
getValor(); public abstract void setValor(float 
Valor);  public abstract int 
getQuantidade(); public abstract void setQuantidade(int 
Quant);  public abstract Integer 
getCodigo(); public abstract void setCodigo(Integer 
Codigo); }




- Original Message - 
From: Herval Freire 

To: [EMAIL PROTECTED] 
Sent: Saturday, May 04, 2002 1:36 PM
Subject: Re: [java-list] ejb
Raphael,E 
quanto ao CMP (Container Managed Persistence)? 
Como se 
configura um ejb para que ele funcione, sem q seja preciso fazer Bean Managed 
Persistence?[]sAt 10:07 2/5/2002 -0300, you wrote:
Da mesma forma que se faz 
  normalmente...Usando JDBC.O que acontece muitas vezes (ou 
  sempre) é o uso de pool de conexão que vcpega um dataSource no serviço de 
  nomes e se conecta ao banco, o resto ficada mesma forma que vc 
  possivelmente fazia quando não 

Re: [java-list] onde foi que eu errei...

2002-05-06 Por tôpico Marco Aurelio Vilela Garcia



Caro Celso;

Inicialmente, sobre interfaces, existe uma classe 
chamada WindowAdapter que possui a mesma função da classe sair que vc 
criou.

Na classe InsSelDelAlt, na linha 21, não é 
necessário ter este segundo bloco try. 
Eu gostaria de olhar mais do código, mas não tenho 
tempo agora. Tente modularizar um pouco suas classes. Por exemplo: Faça um único 
método para capturar uma conexão ao banco, crie uma classe (no seu caso a classe 
Sair) que trate realmente os eventos de janela e separe logicamente o código de 
interface do código para tratamento de funções do sistema. Com isso você 
simplifica o trabalho de depurar o seu código.
Quais tipos de erros são gerados? 

Parabéns, a interface está muito 
legal.

Marco



- Original Message - 
From: Celso Henrique 
To: [EMAIL PROTECTED] 
Sent: Saturday, May 04, 2002 2:31 PM
Subject: [java-list] onde foi que eu errei...

Caos colegas de lista JAVA,
neste arquivo em anexo, esta um exemplo que tentei 
fazer de coneccao com banco de dados access, eh um exemplo simples, com opcoes 
de incluir alterar deletar e consultar, mas o mesmo esta dando erros, sera que 
voces poderiam me ajudar a solucionar estes erros?
Agradeco deste ja a quem puder ajudar.

Celso Henrique
[EMAIL PROTECTED]





-- LISTA SOUJAVA  
http://www.soujava.org.br - Sociedade de Usuários Java da 
Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htmregras 
da lista: http://www.soujava.org.br/regras.htmhistorico: 
http://www.mail-archive.com/java-list%40soujava.org.brpara sair da lista: 
envie email para [EMAIL PROTECTED] 
-


Re: [java-list] J2EE free para Windows XP ?

2002-05-06 Por tôpico Marco Aurelio Vilela Garcia

Caro Claudio;

Minhas experiências em trabalhar com a versão J2EE para ambiente cliente
foram totalmente fracassadas. Por fim instalei um Windos servidor no meu
computador.
Já estou há 1,5 ano trabalhando com J2EE e não conheço nenhuma versão para
ambiente cliente.

Abraços
Marco

- Original Message -
From: Claudio Fernando Resin Geyer [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
Sent: Sunday, May 05, 2002 2:29 PM
Subject: [java-list] J2EE free para Windows XP ?


Ola

Alguem sabe se:

- existe uma versao de J2EE free, ou demo de tempo ilimitado (algo como uma
versao limitada), para Windows XP?

- pelas paginas da Sun, aparentemente o pacote J2EE 1.3 platform so roda em
Windows 2000 professional e NT 4 (plataformas Windows); isto e', nao rodaria
em Windows XP; esta' certo?

Obrigado e um abraco
Claudio Geyer

-- LISTA SOUJAVA 
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED]
-



-- LISTA SOUJAVA  
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP 
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED] 
-




Re: [java-list] java

2002-05-06 Por tôpico Marco Aurelio Vilela Garcia



Aconselho fortemente a comprar um livro chamado 
Core java.
Uma sujestão: não compre nenhum livro do 
Deitel

Marco


- Original Message - 
From: Wellis 
Felipe 
To: [EMAIL PROTECTED] 
Sent: Sunday, May 05, 2002 2:03 PM
Subject: [java-list] java

queria que me auxiliassem com a linguagem java, 
pois estou iniciando e nada sei.


Re: [java-list] ejb

2002-05-06 Por tôpico Marco Aurelio Vilela Garcia

Uma sujestão é que vc nunca crie um EJB na inicialização de um servlet.
Deixe para fazer isso quando for usar o EJB efetivamente.

Você está usando o servidor J2EE? Se sim, você deve criar, configurar e
montar o seu EJB no servidor, neste momento o arquivo XML (chamado
deployment descriptor) será criado e colocado no lugar correto
transparentemente.

Marco

- Original Message -
From: Romulo Oliveira Souza [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Sent: Monday, May 06, 2002 8:22 AM
Subject: [java-list] ejb


Olá pessoal,
Eu tenho um servlet com o seguinte codigo no seu init():
  Context ctx = new InitialContext();
  Object object = ctx.lookup(UsuHome);
  UsuHome homeusu = (UsuHome)PortableRemoteObject.narrow(object,
UsuHome.class);
e os seguinte ejb de sessao:Usu.java, UsuHome.java e UsuBean.java.

Como eu faço para acessar esse ejb atrvés desse servlet? Onde estou
errando?
Eu tenho que criar o xml ejb-jar? Caso sim coloca-lo onde (uso o tomcat)?

PS: Eis o erro que ocorre

2002-05-06 08:16:39 - path=/Usuario :debugjsp: init

2002-05-06 08:16:45 - Ctx(  ): 400 R( /) null

2002-05-06 08:16:45 - path=/Usuario :loginserv: init

org.omg.CORBA.OBJECT_NOT_EXIST:   minor code: 0  completed: No

  at java.lang.Class.newInstance0(Native Method)

  at java.lang.Class.newInstance(Class.java:237)

  at com.inprise.vbroker.orb.SE.read(SE.java:28)

  at
com.inprise.vbroker.orb.DelegateImpl.handleReply(DelegateImpl.java:776)

  at com.inprise.vbroker.orb.DelegateImpl.invoke(DelegateImpl.java:662)

  at org.omg.CORBA.portable.ObjectImpl._invoke(ObjectImpl.java:459)

  at com.inprise.vbroker.orb.RequestImpl._invoke(RequestImpl.java:208)

  at com.inprise.vbroker.orb.RequestImpl.invoke(RequestImpl.java:134)

  at org.omg.CosNaming._NamingContextStub.resolve
(_NamingContextStub.java:156)

...
...

Muito obrigado.





-- LISTA SOUJAVA 
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED]
-



-- LISTA SOUJAVA  
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP 
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED] 
-




Re: [java-list] Password

2002-05-06 Por tôpico Marco Aurelio Vilela Garcia

Caro Matheus;
No caso de criptografar uma senha, eu sugiro que não utilize nada para
criptografia. A documentação ainda está fraca, pois a API de criptografia
foi liberada para usuários fora dos EUA há muito pouco tempo. É possível
obter uma funcionalidade parecida usando um digesto de mensagem.
O procedimento é o seguinte: uma classe irá, a partir da sua senha, criar
uma string que parece ser criptografada. Mas não se trata de criptografia, é
apenas uma forma de autenticação. Eu estou usando isso para armazenar senhas
numa base de dados. Estou satisfeito até agora.

Logo abaixo escrevo um código para vc experimentar.

Abraços
Marco



import java.security.*;

/**
 *  @author  Marco Aurélio Vilela Garcia
 *  @version 1,0
 */
public final class PasswordEncDec {

public static String cryptSenha(String senha){
try{
MessageDigest md = MessageDigest.getInstance(SHA);
byte[] buf = senha.getBytes();
md.update(buf);
byte[] digest = md.digest();

return new String(digest);
}
catch(NoSuchAlgorithmException nsae){

System.err.println(===);

System.err.println(===);
System.err.println(  Erro acontecendo no PasswordEncDec);
System.err.println(  Método cryptSenha );
System.err.println(Exceção: + nsae);

System.err.println(===);

System.err.println(===);
return null;
}
}
}



- Original Message -
From: MATHEUS Fabio O CONFAB [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Sent: Monday, May 06, 2002 8:54 AM
Subject: [java-list] Password


Pessoall,

Alguém teria um exemplo simples de criptografia de uma string, ou
simplesmente só o algoritimo??
Qquer ajuda seria importante..

Grato e boa semana!
Fábio Oliveira Matheus
Confab Industrial S/A. - Depto. Sistemas
Pindamonhangaba - São Paulo - Brasil
E-Mail: [EMAIL PROTECTED]
Fone: 12-244-9316  Fax: 12-244-9304



-- LISTA SOUJAVA 
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED]
-



-- LISTA SOUJAVA  
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP 
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED] 
-