Sto sviluppando un servizio Web, utilizzando Glassfish, utilizzando SOAP. Ho diversi metodi web e voglio presentare il mio nome webmethod ei suoi parametri alla richiesta http head.Ottieni parametri di richiesta da XML utilizzando WebFilter
Ad esempio:
ho questo percorso:
contesto: WebServices
WEBMETHOD: makeSomething
parametri: a = 2
Così ho creare una classe denominata ProfilingFilter:
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws java.io.IOException, javax.servlet.ServletException {
if (request.getContentLength() != -1 && context != null) {
((HttpServletResponse) response).addHeader("Operation", -->PATH+PARAMETERS);
// ((HttpServletResponse) response).addHeader("Operation", -->makeSomething?a=2);
}
}
E'possibile utilizzare la risposta del servlet o richiesta servlet per ottenere queste informazioni?
In caso contrario, come posso fare questo?
Poiché questo è un servizio SOAP, non vi è alcuna richiesta di lettura HTTP. Tutte le operazioni SOAP vengono eseguite tramite il metodo HTTP PUT. Il mio suggerimento è di installare qualcosa come WireShark e acquisire la richiesta XML o ancora meglio utilizzare l'interfaccia utente SOAP per acquisire la richiesta XML e dare un'occhiata a una richiesta effettiva. Questo ti darà un'idea di come dovrai realizzare ciò che desideri. – Namphibian
La tua domanda non è molto chiara. Sembra che tu stia cercando di aggiungere intestazioni HTTP alla richiesta del servizio web, prima che arrivi al bean di elaborazione del servizio web. È corretto? Stai utilizzando un servizio web JAX-WS? Cosa intendi per "metodo web"? Ti stai riferendo alle operazioni HTTP o alle effettive operazioni del servizio web, come in un WSDL? – kolossus
No. Quando effettuo una richiesta, desidero aggiungere Risposta al messaggio di sapone all'intestazione http, tramite Http Servlet Response o qualcosa di simile. Sì Sto eseguendo jax-ws. WebMethod è un metodo all'interno del mio WebService. – Goldbones