Dúvida de injeção de atributo em um conjunto de classes

Boa tarde!!!

Tenho uma aplicação que possui “robos”(classe principal) que chamam outras camadas(–>BO–>DAO). Preciso que minha aplicação registre log do atributo id da classe principal quando estiver executando este código das demais camadas.
Ou seja, imprimir o id da classe principal que as chamou.

O fato é que não gostaria de passar esse “id” como parametro para as demais classes. Teria como injetar esse atributo id nas classes(camadas) que foram chamadas pela classe principal?

grato

Obs:desculpa esse “assunto” esquisito, mas não imagino como formular outro.Tentei ser objetivo.rsss

Qual o seu ambiente?

  1. EJB: lamento, mas não creio que seja possível fazer isso sem passar o atributo como parâmetro. Poderia ser feito usando JAAS, mas o EJB teria que ficar no projeto Web.

  2. Web puro: coloca o objeto na sessão e “injeta” a sessão nos seus DAOs.

Romano

Aplicação = spring + jsf.
O problema é que tenho 10 robos(Dez classes, cada uma lê um tipo de arquivo ) .
O fato é que terei “n threads” de cada robo entende?Então como poderia colocar na sessão o id da thread para injetar num “DAO” por exemplo. Daria certo se eu tivesse uma unica instancia de cada robo, pois injetaria o obejeto correspondente.