Caso contrario, terei que criar um campo do tipo
_InvokerStub no proxy dinamico e enviar a ior para acessar o server, e como
faÃo para integrÃ-los? NÃo sei se estou divagando....
Porque no caso do JRMP, o JRMPInvoker extendsRemoteServer para que no proxy
dinamico via RemoteObject.toStub obter o stub para acessÃ-lo.
Grato,
Rodrigo.
On 10/13/06, Ivan Neto wrote:
> Olà Rodrigo.
>
>
> On 10/13/06, Rodrigo Ferro wrote:
> > Opa, Ivan, td bem?
> > Eu ainda fiquei em dÃvida. O cliente recebe o proxy
> > dinÃmico(serializado) que à fabricado pelo proxy factory.Mas como ocorre
o
> > vÃnculo do proxy dinÃmico com o stub gerado a partir do idl (eu preciso
> > desse stub, pois estou usando IIOP e nÃo java rmi, em que o stub Ã
passado
> > serializado).
> Esse vÃnculo ocorre dentro do invoker proxy, pois à ele quem envia a
> requisicÃo para o lado servidor. Portanto, seu invoker proxy terà que
> instanciar um stub CORBA e utilizÃ-lo para se comunicar com o servidor
> via IIOP.
>
> Qualquer dÃvida estou a disposicÃo.
>
> >
> > Obrigado,
> > Rodrigo
> >
> >
> >
> > On 10/12/06, Ivan Neto wrote:
> > >
> > > Olà Rodrigo.
> > >
> > > On 10/12/06, Rodrigo Ferro wrote:
> > > > 1-O cliente acessarà o servidor usando java RMI + IIOP ou sà via
IIOP?
> > > No caso desse trabalho acredito que a comunicaÄÃo serà feita "apenas"
> > > atravÃs de IIOP.
> > >
> > > > Estou perguntando isso, pois em relaÃÃo ao stub, eu deveria
considerar
> > > que o
> > > > cliente jà possui um stub estÃtico ou deveria ser passado junto com
o
> > > proxy
> > > > de forma serializada.
> > > > A dÃvida surgiu pois no IIOPInvoker (do jboss), Ã usado um stub
dinÃmico
> > > > IIOP(usa o stub de rmi.corba).Se nÃo tiver que passar o stub, sÃ
passo
> > > mesmo
> > > > entÃo a IOR?
> > > NÃo sei se entendi muito bem, mas vou tentar responder (se eu nÃo
> > > responder a sua dÃvida por favor me avise). Os stubs utilizados pelos
> > > clientes sÃo produzidos por uma proxy factory
> > > (org.jboss.proxy.ejb.ProxyFactory), e sÃo baseados em
proxies
> > > dinÃmicos. Tais stubs, apÃs fazerem a requisicÃo passar por uma cadeia
> > > de interceptadores, passam tal requisicÃo para um invoker proxy, o
> > > qual repassa a requisicÃo para o lado servidor atravÃs de algum
> > > protocolo (no caso do EP o IIOP).
> > >
> > > Desse modo, como a classe
org.jboss.proxy.ejb.ProxyFactory jà cria os
> > > stubs para os clientes, vocà nÃo precisa se preocupar em "fabricar"
> > > tais stubs. Vocà precisa apenas dizer a essa fÃbrica para ela "grudar"
> > > o seu invoker proxy nos stubs. Isso à feito atravÃs de um
> > > <invoker-proxy-binding>. Com relacÃo ao seu invoker proxy, tudo o que
> > > ele precisa para passar a requisicÃo para o servidor atravÃs do
> > > protocolo IIOP Ã uma IOR (a IOR do servente que vai receber tais
> > > requisicÃes do lado servidor).
> > >
> > > > 2-Em relaÃÃo à propagaÃÃo de contexto, segundo email anterior, eu
tenho
> > > que
> > > > usar o MarshalledInvocation que recebe um invocation no
construtor.Comoo
> > > > mÃtodo invoke da interface Invoker(definida em idl) recebe um byte[]
> > > > invocation, eu tenho que converter o array para object, fazer um
cast
> > > > invocation e setar a propagaÃÃo de contexto antes de enviar de novo
em
> > > forma
> > > > de um array de bytes para o server?
> > > Vocà vai precisar converter o byte array para um objeto do lado
> > > servidor. Do lado cliente (invoker proxy) vocà cria o
> > > MarshalledInvocation, define o contexto transacional, faz outras
> > > coisas se quiser, e daà na hora de enviar vocà transforma esse
> > > MarshalledInvocation num byte array. Do lado servidor ocorre o
> > > contrÃrio: vocà recebe um byte array, tranforma num
> > > MarshalledInvocation, despacha a requisicÃo, pega a resposta,
> > > transforma num byte array e a envia para o cliente. Para fazer as
> > > tranformacÃes objetos <-> byte array, vocà pode utilizar as classes
> > > ObjectInputStream/ObjectOutputStream.
> > >
> > > > Grato,
> > > > Rodrigo.
> > > Qualquer dÃvida volte a escrever.
> > >
> > > --
> > > Ivan Neto
> > >
> >
>
>
> --
> Ivan Neto
>