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

Re: Código da pergunta que fiz na aula



Olá Danilo,

Você olhou o código do HttpInvoker em qual versão do JBoss?
O HttpInvoker.java que está no CVS HEAD e no Branch_4_0 não
passa null para o setTransaction:

         // Deserialize the transaction if it is there
         MarshalledInvocation mi = (MarshalledInvocation) invocation;
         Object tpc = mi.getTransactionPropagationContext();
         Transaction tx = importTPC(tpc);
         invocation.setTransaction(tx);

Reverbel

On Tue, Oct 19, 2004 at 10:33:04PM -0200, Danilo Conde wrote:
> Olá,
> 
>    A pergunta que fiz no fim da aula de hoje (terça) referiu-se à 
> terceira linha do código abaixo. Trata-se do "miolo" do método invoke do 
> JRMPInvoker. Minha dúvida era se teríamos que fazer o que essa linha faz 
> no nosso JavaIIOPInvoker. Dei uma olhada no código do HTTPInvoker e ele 
> tem uma linha equivalente, porém ele sempre passa null para o 
> setTransaction.
>    O que vocês acham ?
> 
> Danilo
> 
>         // Deserialize the transaction if it is there
>         MarshalledInvocation mi = (MarshalledInvocation) invocation;
>         
> invocation.setTransaction(importTPC(mi.getTransactionPropagationContext()));      
> //   <<<===== aqui
> 
>         mbean = (ObjectName) Registry.lookup(invocation.getObjectName());
> 
>         // The cl on the thread should be set in another interceptor
>         Object obj = serverAction.invoke(mbean,
>            "invoke",
>            new Object[]{invocation},
>            Invocation.INVOKE_SIGNATURE);
>         return new MarshalledObject(obj);
> 
>   
> 

-- 
Francisco Reverbel, Assistant Professor
Department of Computer Science                      reverbel@ime.usp.br
University of Sao Paulo, Brazil        http://www.ime.usp.br/~reverbel/