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

Interceptadores ainda não rodando.



    Olá a todos,

    Bem, a dica do professor Reverbel foi de fato valiosa - os meus 
ClassCastExceptions pararam de acontecer, obrigado! :-) Os 
interceptadores, no entanto, continuam se recusando a executar. Bem, 
seguindo a hipótese de que o JBoss pode estar criando outro ORB sem que 
eu esteja ciente disso (caso contrário seria muito difícil explicar o 
porquê desses interceptadores não estarem rodando), comecei a levantar 
suspeitas a respeito do texto que aparece no meu console quando abro a 
conexão com o servidor de nomes CORBA remoto:

    10:37:32,612 INFO  [STDOUT] Send request.resolve
    10:37:32,614 INFO  [STDOUT] Send request.resolve
    10:37:38,244 INFO  [STDOUT] [ jacorb.home unset! Will use '.' ]
    10:37:38,246 INFO  [STDOUT] [ File ./jacorb.properties for 
configuration jacorb not found ]
    10:37:38,274 INFO  [orb]
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        JacORB V 2.2 (JBoss patch 2), www.jacorb.org
        (C) Gerald Brose, XTRADYNE Technologies/FU Berlin, 08-Jun-2004
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    10:37:38,293 INFO  [orb] Property "jacorb.hashtable_class" not 
present. Will use default hashtable implementation
    10:37:38,551 INFO  [giop] ClientConnectionManager: created new conn 
to target 127.0.0.1:3628
    10:37:43,625 INFO  [giop] ClientConnectionManager: found conn to 
target 127.0.0.1:3628
****10:37:53,875 INFO  [giop] ClientConnectionManager: found conn to 
target 127.0.0.1:3628**************************************************

    Não sei se isso é um texto de inicialização ou não. Esse texto 
aparece prá vocês? Bem, o meu interceptador de fato executa duas vezes, 
quando o próprio JBoss chama o serviço de nomes CORBA. Essas duas 
chamadas são mostradas no text "request.<operation>" que aparece logo 
nas primeiras linhas (eu que mandei o interceptador imprimir isso). O 
engraçado dessas chamadas é que elas passam pelo request processor do 
JacORB, então elas não são "locais" do ponto de vista do CORBA (embora 
sejam locais por serem no mesmo processo). Aliás, a pilha dessas 
chamadas é bastante engraçada:

    TxServerClientInterceptor.send_request(ClientRequestInfo) line: 188
    ClientInterceptorIterator.invoke(Interceptor) line: 86
    ClientInterceptorIterator(AbstractInterceptorIterator).iterate() 
line: 67
    ClientInterceptorIterator.iterate(ClientRequestInfoImpl, short) line: 62
    ClientInterceptorHandler.invokeInterceptors(ClientRequestInfoImpl, 
short) line: 237
    ClientInterceptorHandler.handle_send_request() line: 76
    Delegate.invoke_internal(Object, OutputStream, ReplyHandler, 
boolean) line: 880
    Delegate.invoke(Object, OutputStream) line: 857
    _NamingContextExtStub(ObjectImpl)._invoke(OutputStream) line: 457
    _NamingContextExtStub.resolve(NameComponent[]) line: 399
    
CorbaNamingService$NamingContextImpl(NamingContextImpl).resolve(NameComponent[]) 
line: 587
    
CorbaNamingService$NamingContextImpl(NamingContextExtPOA)._invoke(String, 
InputStream, ResponseHandler) line: 376
    RequestProcessor.invokeOperation() line: 300
    RequestProcessor.process() line: 595
    RequestProcessor.run() line: 737

    Eu não entendo muito porque que isso aí rola. Voltando ao texto do 
console, a linha cheia de asteriscos é a linha que aparece logo depois 
da execução da parte itau.add(-quantity) do código que enviei no e-mail 
anterior. Notem que o interceptador não é chamado.

    É caso para suicídio ou não??

    Abraços,

       Giuliano