Bom, tenho q desenvolver uma aplicação distribuída usando Corba, sendo que o cliente é um Applet
Configurei um servidor apache para que clientes externos possam acessar o applet do servidor. Coloquei o applet no servidor
nos parametros do cliente applet
Além de configurar o jre pra segurança java.policy
grant codeBase “http://meuservidor/…” {
permission java.security.AllPermission;
permission java.lang.RuntimePermission “modifyThread”;
permission java.lang.RuntimePermission “modifyThreadGroup”;
};
Quando acesso pela rede interna, o appler carrega e executa normalmente
Entretando, ao tentar acessar de usuário na rede externa ele carrega mas nao aparece nda.
Perdao pela ignorancia, mas primeira vez que mexo com isso.
No servidor, eu executo:
Iniciar o serviço nomeado como segue:
tnameserv -ORBInitialPort 1050
Agora rodar o servidor:
java labServer -ORBInitialPort 1050 -ORBInitialHost ipServidor
Jah configurei porta de acesso e verifiquei pelo log q a conexao é estabelecida por um usuário externo.
Gostaria de sabe o q fazer, ou se tenho q instalar um servidor tipo Jboss pra gerenciar isso…
Não achei nenhum tutorial na net sobre isso. todos possuem mesmos exemplos de outros livros… olhei tutorias da sun
dentro alguns outros derivados, e livros.
Acho que o problema ta com o init() do applet ou da classe servidor
public void init()
{
try{
// Cria e inicializa ORB
ORB orb = ORB.init(this, null);
// localiza o servico de nomes
org.omg.CORBA.Object obj =
orb.resolve_initial_references("NameService");
// localiza o objeto destino
NamingContext ncontext = NamingContextHelper.narrow(obj);
NameComponent ncomp = new NameComponent("Labirinto", "");
NameComponent path[] = {ncomp};
org.omg.CORBA.Object remoteRef=nContext.resolve(path);
Servidor
[code]
…
try {
// inicializa o ORB
org.omg.CORBA.ORB orb = org.omg.CORBA.ORB.init(args,null);
// cria o objeto
labImpl labimpl = new labImpl();
// registra no ORB
orb.connect(labimpl);
// Registra no servico de nomes
org.omg.CORBA.Object obj = orb.resolve_initial_references("NameService");
NamingContext ncontext = NamingContextHelper.narrow(obj);
NameComponent ncomp = new NameComponent("Labirinto", "");
NameComponent path[] = {ncomp};
ncontext.rebind(path,labimpl);
…[/code]