use of org.apache.cxf.transport.http.HTTPConduit in project cxf by apache.
the class NettyHttpTransportFactory method getConduit.
@Override
public Conduit getConduit(EndpointInfo endpointInfo, EndpointReferenceType target, Bus bus) throws IOException {
HTTPConduit conduit = null;
// need to updated the endpointInfo
endpointInfo.setAddress(getAddress(endpointInfo));
conduit = factory.createConduit(bus, endpointInfo, target);
// Spring configure the conduit.
String address = conduit.getAddress();
if (address != null && address.indexOf('?') != -1) {
address = address.substring(0, address.indexOf('?'));
}
HTTPConduitConfigurer c1 = bus.getExtension(HTTPConduitConfigurer.class);
if (c1 != null) {
c1.configure(conduit.getBeanName(), address, conduit);
}
configure(bus, conduit, conduit.getBeanName(), address);
conduit.finalizeConfig();
return conduit;
}
use of org.apache.cxf.transport.http.HTTPConduit in project cxf by apache.
the class SSLNettyServerTest method setupTLS.
private static void setupTLS(Greeter port) throws FileNotFoundException, IOException, GeneralSecurityException {
String keyStoreLoc = "src/test/resources/org/apache/cxf/transport/http/netty/server/integration/clientKeystore.jks";
HTTPConduit httpConduit = (HTTPConduit) ClientProxy.getClient(port).getConduit();
TLSClientParameters tlsCP = new TLSClientParameters();
String keyPassword = "ckpass";
KeyStore keyStore = KeyStore.getInstance("JKS");
keyStore.load(new FileInputStream(keyStoreLoc), "cspass".toCharArray());
KeyManager[] myKeyManagers = getKeyManagers(keyStore, keyPassword);
tlsCP.setKeyManagers(myKeyManagers);
KeyStore trustStore = KeyStore.getInstance("JKS");
trustStore.load(new FileInputStream(keyStoreLoc), "cspass".toCharArray());
TrustManager[] myTrustStoreKeyManagers = getTrustManagers(trustStore);
tlsCP.setTrustManagers(myTrustStoreKeyManagers);
httpConduit.setTlsClientParameters(tlsCP);
}
use of org.apache.cxf.transport.http.HTTPConduit in project cxf by apache.
the class ApplicationContextTest method checkContext.
private void checkContext(TestApplicationContext ctx) throws Exception {
ConfigurerImpl cfg = new ConfigurerImpl(ctx);
EndpointInfo info = getEndpointInfo("bla", "Foo", "http://localhost:9000");
Bus bus = (Bus) ctx.getBean(Bus.DEFAULT_BUS_ID);
bus.setExtension(cfg, Configurer.class);
DestinationFactoryManager dfm = bus.getExtension(DestinationFactoryManager.class);
DestinationFactory factory = dfm.getDestinationFactory("http://cxf.apache.org/transports/http");
Destination d = factory.getDestination(info, bus);
assertTrue(d instanceof NettyHttpDestination);
NettyHttpDestination jd = (NettyHttpDestination) d;
assertEquals("foobar", jd.getServer().getContentEncoding());
NettyHttpServerEngine engine = (NettyHttpServerEngine) jd.getEngine();
assertEquals(120, engine.getThreadingParameters().getThreadPoolSize());
ConduitInitiatorManager cim = bus.getExtension(ConduitInitiatorManager.class);
ConduitInitiator ci = cim.getConduitInitiator("http://cxf.apache.org/transports/http");
HTTPConduit conduit = (HTTPConduit) ci.getConduit(info, bus);
assertEquals(97, conduit.getClient().getConnectionTimeout());
info.setName(new QName("urn:test:ns", "Bar"));
conduit = (HTTPConduit) ci.getConduit(info, bus);
assertEquals(79, conduit.getClient().getConnectionTimeout());
NettyHttpDestination jd2 = (NettyHttpDestination) factory.getDestination(getEndpointInfo("foo", "bar", "http://localhost:9001"), bus);
engine = (NettyHttpServerEngine) jd2.getEngine();
assertEquals(40000, engine.getReadIdleTime());
assertEquals(10000, engine.getMaxChunkContentSize());
assertTrue("The engine should support session manager", engine.isSessionSupport());
NettyHttpDestination jd3 = (NettyHttpDestination) factory.getDestination(getEndpointInfo("sna", "foo", "https://localhost:9002"), bus);
engine = (NettyHttpServerEngine) jd3.getEngine();
assertEquals(engine.getTlsServerParameters().getClientAuthentication().isWant(), true);
assertEquals(engine.getTlsServerParameters().getClientAuthentication().isRequired(), true);
NettyHttpDestination jd4 = (NettyHttpDestination) factory.getDestination(getEndpointInfo("sna", "foo2", "https://localhost:9003"), bus);
engine = (NettyHttpServerEngine) jd4.getEngine();
assertEquals(engine.getTlsServerParameters().getClientAuthentication().isWant(), false);
assertEquals(engine.getTlsServerParameters().getClientAuthentication().isRequired(), false);
/*NettyHttpDestination jd5 =
(NettyHttpDestination)factory.getDestination(
getEndpointInfo("sna", "foo", "http://localhost:9100"));*/
/*engine = (NettyHttpServerEngine)jd5.getEngine();
String r = "expected fallback thread parameters configured for port 0";
assertNotNull(r, engine.getThreadingParameters());
assertEquals(r, 21, engine.getThreadingParameters().getMinThreads());
assertEquals(r, 389, engine.getThreadingParameters().getMaxThreads());*/
}
use of org.apache.cxf.transport.http.HTTPConduit in project cxf by apache.
the class AsyncHttpTransportFactory method getConduit.
@Override
public Conduit getConduit(EndpointInfo endpointInfo, EndpointReferenceType target, Bus bus) throws IOException {
HTTPConduit conduit = null;
// need to updated the endpointInfo
endpointInfo.setAddress(getAddress(endpointInfo));
conduit = factory.createConduit(bus, endpointInfo, target);
// Spring configure the conduit.
String address = conduit.getAddress();
if (address != null && address.indexOf('?') != -1) {
address = address.substring(0, address.indexOf('?'));
}
HTTPConduitConfigurer c1 = bus.getExtension(HTTPConduitConfigurer.class);
if (c1 != null) {
c1.configure(conduit.getBeanName(), address, conduit);
}
configure(bus, conduit, conduit.getBeanName(), address);
conduit.finalizeConfig();
return conduit;
}
use of org.apache.cxf.transport.http.HTTPConduit in project cxf by apache.
the class UndertowDigestAuthTest method setupClient.
private HTTPConduit setupClient(boolean async) throws Exception {
URL wsdl = getClass().getResource("/wsdl/hello_world.wsdl");
greeter = new SOAPService(wsdl, SERVICE_NAME).getPort(Greeter.class);
BindingProvider bp = (BindingProvider) greeter;
ClientProxy.getClient(greeter).getInInterceptors().add(new LoggingInInterceptor());
ClientProxy.getClient(greeter).getOutInterceptors().add(new LoggingOutInterceptor());
bp.getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, ADDRESS);
HTTPConduit cond = (HTTPConduit) ClientProxy.getClient(greeter).getConduit();
HTTPClientPolicy client = new HTTPClientPolicy();
client.setConnectionTimeout(600000);
client.setReceiveTimeout(600000);
cond.setClient(client);
if (async) {
if (cond instanceof AsyncHTTPConduit) {
UsernamePasswordCredentials creds = new UsernamePasswordCredentials("ffang", "pswd");
bp.getRequestContext().put(Credentials.class.getName(), creds);
bp.getRequestContext().put(AsyncHTTPConduit.USE_ASYNC, Boolean.TRUE);
client.setAutoRedirect(true);
} else {
fail("Not an async conduit");
}
} else {
bp.getRequestContext().put(BindingProvider.USERNAME_PROPERTY, "ffang");
bp.getRequestContext().put(BindingProvider.PASSWORD_PROPERTY, "pswd");
cond.setAuthSupplier(new DigestAuthSupplier());
}
ClientProxy.getClient(greeter).getOutInterceptors().add(new AbstractPhaseInterceptor<Message>(Phase.PRE_STREAM_ENDING) {
public void handleMessage(Message message) throws Fault {
Map<String, ?> headers = CastUtils.cast((Map<?, ?>) message.get(Message.PROTOCOL_HEADERS));
if (headers.containsKey("Proxy-Authorization")) {
throw new RuntimeException("Should not have Proxy-Authorization");
}
}
});
client.setAllowChunking(false);
return cond;
}
Aggregations