[ 
https://issues.apache.org/jira/browse/QPIDJMS-441?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16957585#comment-16957585
 ] 

ASF GitHub Bot commented on QPIDJMS-441:
----------------------------------------

stsiano commented on issue #32: QPIDJMS-441: add proxy support
URL: https://github.com/apache/qpid-jms/pull/32#issuecomment-545283868
 
 
   If you look into the actual productive coding in the pull request, you will 
see that it actually doesn't contain any code changes that can go wrong 
locally. The code actually allows you to set a ProxyHandler in an extension of 
the JmsConnectionFactory. If you do so, it will prevent name resolution within 
the library and set the proxy handler to the Netty Channel used for the 
communication with the broker.
   
   All the real coding for communicating over the proxy is in Netty (and 
therefore tested there). In the end there is not so much magic in the proxies, 
Netty will handshake with the proxy and then the proxy will forward the socket 
to the actual target system, the rest of the communication with the message 
broker is actually handled over this forwarded socket. (This is a bit 
simplified, the Socks5 and HTTP proxies also allow other kinds of connectivity, 
but qpid-jms will not use them). If the proxy is unavailable or causing errors 
you will have the same situation as if the network infrastructure would be 
broken or unavailable. I could add a test that tests that the connectivity 
fails if a proxy is configured but does not exist (which is essentially the 
same as if it is down).
   
   Robbie Gemmell wanted some integration tests in particular for Connect, TLS, 
and failover. In particular the failover test is a bit problematic because it 
contains errors and timeouts and my simple test proxy implementations might 
influence error handling and timing behavior. In the TravisCI build it 
succeeded with OpenJDK 8 and 11, but failed with the XCode 9.3 build (on my 
local PC it also works, so it's a bit hard to find out why it fails in this 
particular CI build).
   
   I could live well with only one of these integration tests (e.g. the 
MessageIntegrationTest to show that proxy configuration and message processing 
works over a proxy).
   
   @gemmellr What do you think how many integration tests should be there.
 
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


> Using QPID JMS behind a proxy
> -----------------------------
>
>                 Key: QPIDJMS-441
>                 URL: https://issues.apache.org/jira/browse/QPIDJMS-441
>             Project: Qpid JMS
>          Issue Type: Wish
>          Components: qpid-jms-client
>    Affects Versions: 0.40.0
>            Reporter: morten
>            Priority: Blocker
>
> I actually did not find a possibility to use the jms qpid client behind a 
> proxy. I guess there will be a lot of people who needs to run the library 
> behind a proxy. It would be nice to have the possibility to set a proxy 
> somehow. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to