我将org.apache.cxf.transport.http.HTTPConduit用作HTTP会话,并将javax.xml.ws.Dispatch用作客户端。我正在尝试将连接超时设置为10分钟,以便它在收到响应(持久连接)后仍然有效。但是,第二封邮件使用的连接与第一封邮件不同。
第一条消息结束后,如果我执行它以在4秒内发送第二条SOAP消息,则它仍在使用相同的连接。
因此,我想问一下我在这里想念什么吗?
代码:
Client client = ((DispatchImpl) dispatch).getClient();
HTTPConduit conduit = (HTTPConduit) client.getConduit();
TLSClientParameters tlsClientParameters = new TLSClientParameters();
tlsClientParameters.setSSLSocketFactory(socketFactory);
tlsClientParameters.setDisableCNCheck(true);
conduit.setTlsClientParameters(tlsClientParameters);
conduit.getClient().setConnection(ConnectionType.KEEP_ALIVE);
conduit.getClient().setConnectionTimeout(600000);
conduit.getClient().setAllowChunking(false);
conduit.getClient().setReceiveTimeout(600000);
SOAPMessage response = dispatch.invoke(requestSource);