Come configurare la mia applicazione Spring MvC 4 con Spring WS per stabilire una connessione SSL a due vie con una terza parte come Bank. Devo scambiare i miei certificati e anche verificare i certificati del server e quindi scambiare messaggi di Soap. Se qualche link o codice o procedura si prega gentilmente di aggiornareCome inviare messaggi di richiesta Soap in Spring Ws a un server che accetta messaggi di richiesta Soap?
7
A
risposta
2
Avviare il VM con le proprietà necessarie per chiavi e trustore come descritto here in the JSSE doc:
-Djavax.net.ssl.keyStoreType=yourKeystoreType(jks,pkcs12,etc.)
-Djavax.net.ssl.trustStoreType=yourTruststoreType(jks,pkcs12,etc.)
-Djavax.net.ssl.keyStore=/path/to/your/keystore
-Djavax.net.ssl.trustStore=/path/to/your/truststore
-Djavax.net.debug=ssl
-Djavax.net.ssl.keyStorePassword=...
-Djavax.net.ssl.trustStorePassword=...
Poi nel codice del client è necessario ottenere lo SSLSocketFactory
SSLSocketFactory sslsocketfactory =(SSLSocketFactory) SSLSocketFactory.getDefault();
e allegarlo al WebServiceTemplate (Snippet per la creazione di HttpClient tratto da ClientCustomSSL from apache examples):
WebServiceMessageSender sender = new HttpComponentsMessageSender(HttpClients.custom().setSSLSocketFactory(sslsocketfactory));
getWebServiceTemplate().setMessageSender(sender);
+0
come utilizzare il metodo marshall e ricevere dopo aver impostato MessageSender – briantaurostack7
3
È possibile con Spring-WS. Devi utilizzare l'API WebServiceTemplate
fornita da Spring WS. Di seguito è il modo di usarlo.
import java.io.StringReader;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
import org.springframework.ws.WebServiceMessageFactory;
import org.springframework.ws.client.core.WebServiceTemplate;
import org.springframework.ws.transport.WebServiceMessageSender;
public class WebServiceClient {
private static final String MESSAGE =
"<message xmlns=\"http://tempuri.org\">Hello Web Service World</message>";
private final WebServiceTemplate webServiceTemplate = new WebServiceTemplate();
public void setDefaultUri(String defaultUri) {
webServiceTemplate.setDefaultUri(defaultUri);
}
// send to the configured default URI
public void simpleSendAndReceive() {
StreamSource source = new StreamSource(new StringReader(MESSAGE));
StreamResult result = new StreamResult(System.out);
webServiceTemplate.sendSourceAndReceiveToResult(source, result);
}
// send to an explicit URI
public void customSendAndReceive() {
StreamSource source = new StreamSource(new StringReader(MESSAGE));
StreamResult result = new StreamResult(System.out);
webServiceTemplate.sendSourceAndReceiveToResult("http://localhost:8080/AnotherWebService",
source, result);
}
}
prega di fare riferimento questo link
E un altro utile link2
Problemi correlati
- 1. Firma richiesta SOAP JAX-WS
- 2. Come inviare una richiesta SOAP in PHP
- 3. Richiesta SOAP a WebService con java
- 4. Delphi 2007 che genera messaggi SOAP errati
- 5. come inviare la richiesta SOAP con certificato SSL in PHP?
- 6. Richiesta HTTP SOAP PHP
- 7. Richiesta SOAP in R
- 8. Come aggiungere intestazioni SOAP a una richiesta SOAP utilizzando JAX-WS?
- 9. Client SOAP PHP che comprende messaggi multiparte?
- 10. Richiesta SOAP con attributo
- 11. Come inviare l'intestazione della richiesta SOAP in Java?
- 12. prefisso mancante nella richiesta soap utilizzando jax-ws
- 13. Come inviare la richiesta SOAP e la risposta SOAP Parse in formato XML in Android?
- 14. Richiesta SOAP multipla utilizzando Javascript
- 15. Servizio di registrazione Richiesta e risposta SOAP in C#
- 16. Come aggiungere un'intestazione alla richiesta SOAP?
- 17. Messaggi SOAP in servizio web basato su REST
- 18. come si invia una richiesta SOAP?
- 19. Javascript web worker dedicato per inviare messaggi a richiesta
- 20. SOAP 1.2 restituisce una cattiva richiesta mentre SOAP 1.1 funziona
- 21. Come acquisire i messaggi SOAP da un'app per Java Tomcat su un server esterno?
- 22. Come posso fare in modo che i servizi Web di Spring registrino tutte le richieste SOAP?
- 23. Richiesta SOAP in PHP con CURL
- 24. Invocazione della richiesta SOAP dal comando shell
- 25. Come inviare messaggi SMS da un server
- 26. Come aggiungere intestazioni SOAP al client Spring Jax-WS?
- 27. JAX-WS - Aggiunta di intestazioni SOAP
- 28. Come utilizzare Mockito per testare i messaggi SOAP?
- 29. Come cambio il formato data di una richiesta SOAP .net?
- 30. wsdl non valido generato da spring-ws quando l'elemento richiesta non termina con 'Richiesta'
Vuoi produrre un servizio web o consumare uno? Sono un po 'confuso ... Sembra che tu voglia consumarne uno però. Allora dovresti dare un'occhiata a questo: https://spring.io/guides/gs/consuming-web-service/ – NWessel
Per chiarimenti, dove hai bisogno della connessione SSL? Per il servizio Web che desideri utilizzare? –
Ti suggerisco di dedicare del tempo a leggere la guida di riferimento di Spring WS ... La guida ti dice tutto ciò di cui hai bisogno, a parte la configurazione SSL. –