[jboss-user] [JBoss Remoting] - Is there a way to avoid a proxy server closing Jboss HTTPS connection on long requests?

Karen Lease do-not-reply at jboss.com
Tue Jun 19 08:39:06 EDT 2012


Karen Lease [https://community.jboss.org/people/klease] created the discussion

"Is there a way to avoid a proxy server closing Jboss HTTPS connection on long requests?"

To view the discussion, visit: https://community.jboss.org/message/742691#742691

--------------------------------------------------------------
We have a client/server application running on Jboss 5.1.0.GA with JbossRemoting 2.5.3.SP1.
Clients make remote EJB3 calls to the server using https which is routed through a proxy server.
The jndi.properties includes this:
java.naming.factory.initial=org.jboss.naming.HttpNamingContextFactory
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
java.naming.provider.url=https://SERVER:443/unified-invoker/SSLJNDIFactory/?dataType=invocation&return-exception=true

On some remote calls which run for several minutes, the proxy server terminates the HTTPS connection from the client. On the client side, we receive an exception like this:
Caused by: java.net.SocketException: Unexpected end of file from server
    at sun.net.www.http.HttpClient.parseHTTPHeader(Unknown Source)
    at sun.net.www.http.HttpClient.parseHTTP(Unknown Source)
    at sun.net.www.http.HttpClient.parseHTTPHeader(Unknown Source)
    at sun.net.www.http.HttpClient.parseHTTP(Unknown Source)
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
    at java.net.HttpURLConnection.getResponseCode(Unknown Source)
    at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(Unknown Source)
    at org.jboss.remoting.transport.http.HTTPClientInvoker.getResponseCode(HTTPClientInvoker.java:1269)
    at org.jboss.remoting.transport.http.HTTPClientInvoker.useHttpURLConnection(HTTPClientInvoker.java:351)
    at org.jboss.remoting.transport.http.HTTPClientInvoker.makeInvocation(HTTPClientInvoker.java:232)
The server method continues to run but of course no results can be returned to the client.

Is there any way to have the jboss client or server layers "keep the connection alive" while waiting for the method to terminate, which would avoid the proxy server closing the connection?
The obvious solution would be to increase the proxy timeout, but we don't have direct control over it.
Any suggestions would be greatly appreciated.
If there is no way to do this with current Jboss Remoting, is it possible in a more recent version of Jboss ?
--------------------------------------------------------------

Reply to this message by going to Community
[https://community.jboss.org/message/742691#742691]

Start a new discussion in JBoss Remoting at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2050]

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-user/attachments/20120619/f06211d9/attachment-0001.html 


More information about the jboss-user mailing list