[Prévia] [Próxima] [Prévia por assunto] [Próxima por assunto]
[Índice cronológico]
[Índice de assunto]
Re: Propagacao de contexto
- Subject: Re: Propagacao de contexto
- From: Francisco Reverbel <reverbel@xxxxxxxxxx>
- Date: Thu, 2 Dec 2004 19:08:34 -0200
On Thu, Dec 02, 2004 at 11:46:13AM -0200, Giuliano Mega wrote:
> Em resposta à minha própria pergunta. Acho que me confundi por causa
> daquele mecanismo de mapeamento reverso de Java para IDL. Agora me
> lembrei que de fato o RMI/IIOP e CORBA têm de ser tratados de maneira
> idêntica.
É isso mesmo. Do lado do servidor não há nenhuma diferença.
Reverbel
> Mas a questão dos interceptadores CORBA... huuuum... isso
> ainda me deixou com uma ponta de dúvida.
>
> Abraços,
>
> Giuliano
>
> > Oi, Ivan,
> >
> > He he he. Eu estava determinado em tentar decifrar isso ontem de
> >noite, mas não rolou. :-)
> > Não só não rolou como fiquei com algumas dúvidas extras.
> > Bem, eu estava pronto para responder que bastaria você usar o
> >"orb.resolve_initial_references("TransactionCurrent")", quando comecei
> >a me confundir ao pensar na maneira pela qual o JBoss lida com
> >RMI/IIOP se não existe um "invoker Java-IIOP" na distribuição padrão
> >do JBoss (na verdade, isso só existe na nossa distribuição do JBoss
> >;-) ).
> > Pelo que pude entender, o JBoss procura não duplicar funcionalidade
> >em dois troncos. He he. O que eu quero dizer com isso é que *parece*
> >que eles tratam RMI/IIOP e CORBA de maneira idêntica do lado servidor.
> >Eu não tenho certeza disso, mas o fato de que a fábrica de lado
> >cliente para RMI/IIOP usa CORBA dá a dica.
> > Daí fiquei pensando... meeeeeu... como que são os proxies de lado
> >cliente quando você usa RMI/IIOP!? Como, afinal, que as chamadas
> >RMI/IIOP são codificadas?
> > Agora, a minha conclusão inútil. Deve haver um mecanismo uniforme
> >para se obter o contexto transacional que seja independente de
> >protocolo. Como o contexto não é independente de protocolo no nível da
> >chamada (IIOP é diferente do resto, inclusive os interceptadores),
> >então o lance deve ser acertado no serviço IIOP. Hehehehe. Este e-mail
> >está meio prematuro, mas é legal ficar discutindo isso. :-)
> >
> > Abraços,
> >
> > Giuliano
> >
> >
> >>Ola a todos.
> >>Estou com dificuldades para entender a propagacao do contexto
> >>transacional nas
> >>chamadas IIOP. Pelo que entendi, o contexto e propagado de maneira
> >>implicita e
> >>automatica. O que vi no codigo-fonte do JBoss foi o seguinte: O EJB
> >>rodando
> >>sobre RMI/IIOP vai usar a interface
> >>org.jboss.tm.iiop.client.IIOPClientUserTransaction,
> >>que implementa javax.transaction.UserTransaction. A partir dai, na
> >>hora de
> >>criar uma transacao, ele pega aquele servente default que o Reverbel
> >>comentou
> >>hoje na aula (org.jboss.tm.iiop.TransactionServiceImpl), chama
> >>create_transaction
> >>e depois configura um client interceptor para colocar o contexto da
> >>transacao
> >>nas chamadas IIOP.
> >>Ate ai blz. O problema que estou tendo e com o EJB alvo da requisicao
> >>IIOP feita
> >>por um primeiro EJB. Minha ideia era a seguinte: quando o EJB alvo
> >>fosse usar um
> >>recurso XA, no metodo enlistResource da classe
> >>org.jboss.tm.TransactionImpl eu
> >>faria um register_resource com o coordinator do servidor de
> >>aplicacoes do EJB
> >>que fez a requisicao IIOP. Mas como eu tenho acesso ao contexto
> >>transacional?
> >>Vi a classe org.jboss.tm.iiop.client.TransactionCurrent, mas acho que
> >>nao e
> >>por ela que eu acesso qualquer dado do contexto transacional.
> >>
> >>Dei uma olhada tambem no interceptador do lado servidor
> >>org.jboss.tm.iiop.TxServerClientInterceptor, que e o equivalente do
> >>interceptador
> >>que do lado cliente coloca o contexto transacional, mas nao encontrei
> >>nada muito
> >>util.
> >>
> >>Enfim, como obter acesso ao contexto transacional que e carregado
> >>junto com
> >>a requisicao IIOP?
> >>
> >>Nao sei se faz sentido o que acabei de escrever, mas agradeco
> >>qualquer ajuda.
> >>
> >>Abracos.
> >>
> >>
> >>
> >
> >
>
--
Francisco Reverbel, Assistant Professor
Department of Computer Science reverbel@ime.usp.br
University of Sao Paulo, Brazil http://www.ime.usp.br/~reverbel/