Uso SpringWS per il mio servizio soap e lo convalido in questo modo;Spring WS: Come ottenere e salvare gli errori di convalida XSD
<sws:interceptors>
<bean id="payloadValidatingInterceptor" class="org.springframework.ws.soap.server.endpoint.interceptor.PayloadValidatingInterceptor">
<property name="schema" value="/schemas/my.xsd"/>
<property name="validateRequest" value="false"/>
<property name="validateResponse" value="true"/>
</bean>
@PayloadRoot(namespace = NAMESPACE, localPart = "ServiceProvider")
@ResponsePayload
public ServiceProviderTxn getAccountDetails(@RequestPayload ServiceProviderrequest)
{ ...}
Questo funziona bene, ma quando c'è un errore che restituisce una molla generato risposta di errore prima che raggiunga il punto finale, quindi non ho mai avuto la possibilità di elaborarli. Ma voglio essere in grado di registrare e salvare il messaggio di errore completo nel database. Un modo in cui ho scoperto è di fare qualcosa di simile nella mia altra domanda;
Spring WS How to get all error messages when validation fails
Ma non funziona come voglio.
tnx ma potresti estendere la risposta con il codice e combinare con la risposta che ho descritto sul mio collegamento? Sembra più una teoria piuttosto che una soluzione di lavoro – Spring
@Spring: aggiunta una classe di esempio – Giovanni
Ho provato ma handleRequestValidationErrors non viene mai chiamata – Spring