Hi Sergey, 

About the issue marked as 'Not a problem',
https://issues.apache.org/jira/browse/CXF-6846
<https://issues.apache.org/jira/browse/CXF-6846>  , this is the original
test case that i checked with, 

/**
 * @author Viral Gohel
 *
 */
public class TestAsyncTTL extends Assert {
        private Logger logger=LoggerFactory.getLogger(TestAsyncTTL.class);
//
        private static WebServiceContext context;
        @BeforeClass
        public static void prepareEndpoint() throws InterruptedException {
                Bus bus = BusFactory.getThreadDefaultBus();
                bus.setProperty(AsyncHTTPConduit.USE_ASYNC,
AsyncHTTPConduitFactory.UseAsyncPolicy.ALWAYS);
                bus.setProperty(AsyncHTTPConduitFactory.CONNECTION_TTL,1);
                bus.setProperty(AsyncHTTPConduitFactory.SO_TIMEOUT, 5);
                
bus.setProperty(AsyncHTTPConduitFactory.SO_KEEPALIVE,Boolean.TRUE);
                bus.getInInterceptors().add(new LoggingInInterceptor());
                bus.getOutInterceptors().add(new LoggingOutInterceptor());
                BusFactory.setThreadDefaultBus(bus);
                AsyncHTTPConduitFactory hcf =
(AsyncHTTPConduitFactory)bus.getExtension(HTTPConduitFactory.class);
                Endpoint endpoint = 
Endpoint.publish("http://localhost:8123/testService";,
new GreeterService() {


                        public String sayHello(long cnt) throws 
InterruptedException {
                                     Thread.sleep(70000);
                         return "Hello, finally! " + cnt;
                        }
                });

        }
        @Test
        public void testService() throws InterruptedException {


                /*HTTPClientPolicy clientPolicy=new HTTPClientPolicy();
                clientPolicy.setAllowChunking(false);
                clientPolicy.setConnection(ConnectionType.KEEP_ALIVE);
*/
                //ogger.debug("Receive Timout is : " + 
clientPolicy.getReceiveTimeout());

                ClientProxyFactoryBean bean = new ClientProxyFactoryBean();
                //bean.setBus(bus);
                bean.setAddress("http://localhost:8123/testService";);
                bean.setServiceClass(GreeterService.class);
                GreeterService service = (GreeterService) bean.create();
                AsyncHTTPConduit conduit = (AsyncHTTPConduit)
ClientProxy.getClient(service).getConduit();
                //conduit.setClient(clientPolicy);

                service.sayHello(5);
                //Thread.sleep(5000);
        }
}

CONNECTION_TTL seems to be related to Http Keep-Alive, while ReceiveTimeout
with Sockets. 

So, with the above test case, i would expect that the Http connection should
be re-established, after 1 ms.

Please suggest.

Regards,
Viral Gohel






--
View this message in context: 
http://cxf.547215.n5.nabble.com/CXF-JAXRS-Client-HttpAsyncClient-and-KeepAlive-tp5747402p5767875.html
Sent from the cxf-user mailing list archive at Nabble.com.

Reply via email to