Java/RMI: diferenças entre revisões
[edição verificada] | [revisão pendente] |
Conteúdo apagado Conteúdo adicionado
Sem resumo de edição |
m <source> -> <syntaxhighlight> (phab:T237267) |
||
Linha 17:
Primeiro devemos criar uma interface que será utilizada para exibir aos usuários dos serviço as operações.
<
package rmiknolexample;
Linha 33:
public String[] readPosts(int beginAt) throws RemoteException;
}
</syntaxhighlight>
Depois devemos criar uma classe que irá implementar a interface e disponibilizar a funcionalidade.
<
package rmiknolexample;
Linha 75:
return copy;
}
</syntaxhighlight>
Feito isso vamos implementar a classe que irá disponibilizar o serviço ao usuário.
<
package rmiknolexample;
Linha 106:
}
}
</syntaxhighlight>
Na classe acima observe a linha:
<
Naming.rebind("forumService", forumObj);
</syntaxhighlight>
Ela é responsável por associar um nome ao seu objeto. É através deste nome que os computadores e processos remotos irão encontrar e utilizar o seu objeto. Este nome é único para um dado host, ou seja, mesmo se duas aplicações criarem objetos distintos (até mesmo de classes distintas) o mesmo nome não poderá ser utilizado.
Linha 118:
Por último vamos implementar a classe que irá utilizar o serviço disponibilizado.
<
package rmiknolexample;
Linha 156:
}
}
</syntaxhighlight>
A linha:
<
IForum forumObj = (IForum)Naming.lookup("rmi://localhost/forumService");
</syntaxhighlight>
Efetua uma consulta no host informado (neste caso o localhost) e solicita o objeto associado ao nome: forumService.
Linha 170:
Para facilitar o teste, a classe abaixo foi criada apenas para permitir rodar o serviço através da linha de comando: "java -jar arquivoJar.jar"
<
package rmiknolexample;
Linha 191:
}
}
</syntaxhighlight>
pronto!
|