...
| Bloque de código |
|---|
|
package com.servicios.soap.configuracion;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.oxm.jaxb.Jaxb2Marshaller;
import com.servicios.soap.client.MarketSoapClient;
@Configuration
public class ClientesSoapConfiguracion {
/**
* Bean necesario para que el cliente haga la transformacion JAXB
*
* @return
*/
@Bean
public Jaxb2Marshaller marshaller() {
Jaxb2Marshaller marshaller = new Jaxb2Marshaller();
// El nombre del paquete debe ser donde esten las clases Java generadas con JAXB
marshaller.setContextPath("com.servicios.soap.model");
return marshaller;
}
/**
* Damos de alta el cliente soap
*
* @param marshaller
* @return
*/
@Bean
public MarketSoapClient marketSoapClient(Jaxb2Marshaller marshaller) {
MarketSoapClient client = new MarketSoapClient();
// Indicar la uri del servicio
client.setDefaultUri("http://localhost:8080/soap");
client.setMarshaller(marshaller);
client.setUnmarshaller(marshaller);
return client;
}
} |
Aquí tendremos que modificar la uri de nuestro servicio. Esto lo haremos en la línea de client.setDefaultUri( ... ), y podemos obtener dicha uri en el archivo que hemos utilizado para generar las clases necesarias, en la propiedad location del bloque <soap address />, por ejemplo:
| Bloque de código |
|---|
<soap:address location="http://serviciosumupruebas.um.es:80/serviciosumu/services/ServicioUmu"/> |