[Prévia] [Próxima] [Prévia por assunto] [Próxima por assunto]
[Índice cronológico] [Índice de assunto]

Carga dinâmica de stubs



Pessoal,

Parece que vocês estão tendo problemas para fazer um cliente pegar os 
stubs RMI/IIOP "no vôo". Deixei um exemplo de carga dinâmica de stubs
em 

  http://www.ime.usp.br/~reverbel/SMA/exemplos/test-iiop-ejb.zip

É o velho exemplo do conversor de moeda. Acerte o diretório do JBoss 
no build.xml, levante o servidor, vá pro diretório do exemplo e dê 

  ant deploy
  ant run-jacorb-client
  ant run-jdkorb-client
  ant run-jacorb-rmic-client
  ant run-jdkorb-rmic-client
  
As quatro últimas chamadas ao ant mostram quatro formas de rodar o cliente:

  (1) usando o JacORB e stubs carregados dinamicamente do servidor
  (2) usando o ORB do JDK e stubs carregados dinamicamente do servidor
  (3) usando o JacORB e stubs gerados via 'rmic -iiop'
  (4) usando o ORB do JDK e stubs gerados via 'rmic -iiop'

Notem que nos casos (1) e (2) o cliente é chamado sem stubs no classpath, 
mas com 

    "-Djava.security.manager" 
e 

    "-Djava.security.policy=etc/java.policy"

Para que o cliente faça carga dinâmica de stubs é preciso dar permissões
a ele! O arquivo etc/java.policy deve ser uma policy file com permissões 
suficientes para que o cliente abra uma conexão com o servidor e puxe os 
stubs via HTTP. Por simplicidade, a minha policy file é bem mais 
generosa ("grant allPermission...") que o necessário.

Notem, ainda, que nos casos (3) e (4) o cliente é chamado sem um security 
manager, mas com stubs no classpath.

Bom trabalho,

Reverbel