Bonjour à tous
je suis confronté à un soucis, que je n'arrive pas à résoudre :
Dans le cadre d'une application WS SOAP, je tente de mettre en place un système de log des données entrantes, en utilisant les intercepteurs CXF d'apache.
En clair, je souhaite me positionner après la phase d'unmarshalling, récupérer mon objet java, et ainsi pouvoir logger son contenu.
Mon problème est le suivant :
Via le code suivant, je me suis positionné en phase POST_LOGICAL, donc d'après ce que j'ai compris, après l'opération d'unmarshalling
Ensuite, dans la méthode handle que j'override, je souhaite récupérer mon objet, via, d'après ce que j'ai cru voir, le code suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 public TestInterceptor() { super(Phase.POST_LOGICAL ); }
Or... null.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 public void handleMessage(SoapMessage arg0) throws Fault { MonObjet monObjet = arg0.getContent(MonObjet.class); }
En passant en debug, j'ai vu qu'effectivement, l'attribut contents de arg0 est null. Par contre, un attribut nommé defaultContents contient bien mon objet comme je le souhaite, mais je ne trouve pas comment le getter...
Help, si quelqu'un a une solution, ça serait un bonheur
Merci d'avance.
Partager