Знаете ли вы, есть ли способ зарегистрировать, перехватить перехватчик, ввести значения вызываемого метода?Получить входное значение для ejb 3.1 throw interceptor
мой фактический перехватчик
public class Interceptor {
@AroundInvoke
public Object interceptor(InvocationContext invocationcontext) throws Exception{
//Stampa prima del metodo
long startTime = System.currentTimeMillis();
log.debug("Invoked method: "+invocationcontext.getMethod().getName());
//here I would like to log also parameters.
try{
return invocationcontext.proceed();
} finally{
log.debug("End of method: " + invocationcontext.getMethod().getName());
log.debug(" duration: " + (System.currentTimeMillis() - startTime));
}
}
}
Фасоль является
@Interceptors({Interceptor.class})
@Stateless общественного класса MrBean реализует MrBeanRemote, MrBeanLocal {
/**
* Default constructor.
*/
public MrBean() {
}
public void print(String in){
System.out.println("Print: " + in);
}
}
Так что, если я вызвать метод печати с in = "print, что" перехватчик должен регистрировать "print t шапка". Является ли это возможным? Заранее спасибо
Я попытался log.debug (invocationcontext.getParameters() ToString ()); [Ljava.lang.Object; @ f72802c4 – Gio
извините, я не могу отредактировать комментарий выше ... Я хотел сказать, что я пробовал этот журнал, но он печатает строку [Ljava.lang.Object; @ f72802c4 и не значение параметров – Gio
@Gio: 'invocationcontext.getParameters()' возвращает массив объекта. Вам нужно перебрать этот массив. – shibli049