_puller = new ModelPuller<CompositeModel>();
// Provide a switchyard service
SOAPProvider provider = new SOAPProvider();
CompositeModel composite = _puller.pull("/HelloSwitchYard.xml", getClass());
composite.assertModelValid();
CompositeServiceModel compositeService = composite.getServices().get(0);
_config = (SOAPBindingModel)compositeService.getBindings().get(0);
// Massive hack for Test Runner. Register both a service and a reference binding.
_domain.registerService(_config.getServiceName(), new HelloWebServiceInterface(), provider);
_domain.registerServiceReference(_config.getServiceName(), new HelloWebServiceInterface());
String host = System.getProperty("org.switchyard.test.soap.host", "localhost");
String port = System.getProperty("org.switchyard.test.soap.port", "8080");
// Service exposed as WS
_soapInbound11 = new InboundHandler(_config, _domain);
_config.setSocketAddr(new SocketAddr(host, Integer.parseInt(port)));
_soapInbound11.start();
_serviceURL = new URL("http://" + host + ":" + port + "/HelloWebService");
// A WS Consumer as Service
SOAPBindingModel config2 = new V1SOAPBindingModel(SOAPNamespace.DEFAULT.uri()) {
@Override
public CompositeReferenceModel getReference() {
return new V1CompositeReferenceModel();
}
};
config2.setWsdl(_serviceURL.toExternalForm() + "?wsdl");
config2.setServiceName(_consumerService11.getServiceName());
config2.setName("testGateway");
_soapOutbound11_1 = new OutboundHandler(config2);
_soapOutbound11_1.start();
// Hack for Test Runner. Register a service to test outbound.
_domain.registerService(_consumerService11.getServiceName(), new HelloWebServiceInterface(), _soapOutbound11_1);
SOAPBindingModel config3 = new V1SOAPBindingModel(SOAPNamespace.DEFAULT.uri()) {
@Override
public CompositeReferenceModel getReference() {
return new V1CompositeReferenceModel();
}
};
config3.setWsdl(_config.getWsdl());
config3.setServiceName(_consumerCPWsdl.getServiceName());
config3.setName("testGateway");
_soapOutbound11_2 = new OutboundHandler(config3);
_soapOutbound11_2.start();
// Hack for Test Runner. Register a service to test outbound.
_domain.registerService(_consumerCPWsdl.getServiceName(), new HelloWebServiceInterface(), _soapOutbound11_2);
composite = _puller.pull("/HelloSwitchYard1.2.xml", getClass());
composite.assertModelValid();
compositeService = composite.getServices().get(0);
SOAPBindingModel _config12 = (SOAPBindingModel)compositeService.getBindings().get(0);
_config12.setSocketAddr(new SocketAddr(host, Integer.parseInt(port)));
// Massive hack for Test Runner. Register both a service and a reference binding.
_domain.registerService(_config12.getServiceName(), new HelloWebServiceInterface(), provider);