ho una applicazione j2ee che gira sotto tomcat e che utilizza un framework che non ho mai visto. Ai metodi di ogni classe viene passato un parametro "context" che stampato restituisce:
context: {executor=http-8080-Processor4, connection=com.archibus.db.DbConnectionImpl@af9f6, filtri=, context=com.archibus.config.ContextImpl@1763f10|co m.archibus.config.ConfigManagerImpl-My Company-com.archibus.config.ProjectImpl-Ferservizi-com.archibus.security.UserAccountImpl-AFM-sessionId--6B48A0DB54EECD0AC2018C6C2CE29316--com.archibus.config.UserSessionImpl-6B48A0DB54EECD0AC2018C6C2CE29316-userName--AFM--com.archibus.controller.ControllerViewImpl-ControllerViewImpl-com.archibus.config.ContextImpl-Non-cached context|Non-cached context, project=com.archibus.config.ProjectImpl@108caaf|co m.archibus.config.ConfigManagerImpl-My Company-com.archibus.config.ProjectImpl-Ferservizi|Ferservizi, request=org.apache.catalina.connector.RequestFacad e@a091ce, response=org.apache.catalina.connector.ResponseFac ade@1c4a940}
la classe di context fa parte delle librerie del framework.
Volendo estrarre la request dal contesto, faccio
Object objRequest = (Object)context.getParameter("request");
logger.debug("**** classe: " + objRequest.getClass().toString());
e mi stampa sul log:
**** classe: class org.apache.catalina.connector.RequestFacade
ma se faccio:
org.apache.catalina.connector.RequestFacade request = (org.apache.catalina.connector.RequestFacade)objRe quest;
mi da una java.lang.ClassCastException: org.apache.catalina.connector.RequestFacade
forse non si può fare questa operazione con questi tipi? Altrimenti come faccio ad estrare la request dal contesto?

Rispondi quotando