[Prévia] [Próxima] [Prévia por assunto] [Próxima por assunto]
[Índice cronológico]
[Índice de assunto]
Interceptadores ainda não rodando.
- Subject: Interceptadores ainda não rodando.
- From: Giuliano Mega <giuliano@xxxxxxxxxx>
- Date: Thu, 09 Dec 2004 11:15:16 -0200
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