Re: java client and ntlm proxy

"Pierre Gilquin" <[email protected]> Mon, 14 Mar 2011 09:05:46 +0100
Newsgroups gmane.comp.web.webobjects.devel
Message-ID <[email protected]>
Merci Aurélien.

I have already try to extend EOHTTPChannel. Until now without success ...
It's why i try to use cntlm.

My last attempt is to use cntlm tunneling :
>cntlm.exe -c cntlm.ini -v
cntlm: New tunnel from 127.0.0.1:11443 to host.domain.tld:80


In this case the launch don't use any http.proxy but directly the port 11443 on localhost:
>java MyClassUsingEOClientApplicationSupport -applicationURL http://localhost:11443/cgi-bin/WebObjects/MyAppli.woa 

I dont know why this is not working ...

Thanks for any idea

Pierre

  ----- Original Message ----- 
  From: Aurélien Minet 
  To: [email protected] ; WebObjects (Group) 
  Sent: Sunday, March 13, 2011 10:56 PM
  Subject: Re: java client and ntlm proxy


  Hi

  Yes the socket is open directly, in fact stuff behind EOHTTPChannel (createSocket) doesn't take in account http.proxy* 
  args cause finally use java.net.Socket and not java.net.URL, so Java Client can't connect to the application trough any 
  HTTP proxy (NTML or not).
  A solution could be to override  NSSocketUtilities.getSocketWithTimeout or to extend 
  com.webobjects.eodistribution.client.EOHTTPChannel with a class having a methode createSocket which return a Socket.
  We have got the same problem for Java Client connecting to the application using an https URL. A colleague make a POC 
  with a class which extends EOHTTPChannel and use javax.net.ssl

  Aurelien

  ps : for command line launching
  java -classpath "jar list" com.webobjects.eoapplication.client.EOClientApplicationSupport
  -applicationURL http://host.domain.tld/cgi-bin/WebObjects/App.woa [other arguments]
  (prefer a .jnlp file for deployment)


  On 03/08/2011 09:43 AM, Pierre Gilquin wrote:
  > Hi David,
  >
  > Starting the application with JWS or at command line gives the same result.
  > I guess that the socket is open directly (port 80) without going thru the proxy and that's why I get a timeout error.
  >
  > I dont get your idea, what can you check in the jnlp file ?
  > Thanks
  >
  > Pierre
  >
  >
  >
  >     ----- Original Message -----
  >     *From:* David Avendasora <mailto:[email protected]>
  >     *To:* Pierre Gilquin <mailto:[email protected]>
  >     *Cc:* [email protected] <mailto:[email protected]>
  >     *Sent:* Monday, March 07, 2011 8:26 PM
  >     *Subject:* Re: java client and ntlm proxy
  >
  >     Hi Pierre,
  >
  >     Are you launching the application from a link that downloads a .jnlp file from the server? If so, look at it's
  >     contents to be sure it is using the ports you think it is.
  >
  >     Dave
  >
  >
  >     On Mar 7, 2011, at 11:52 AM, Pierre Gilquin wrote:
  >
  >>     Hi all,
  >>
  >>     I am trying to use a java client inside a entreprise network using an ntml proxy with authentification for
  >>     accessing the outside world.
  >>
  >>     Seems that java cannot pass that kind of  proxy. At least, I was not able to do it.
  >>     So I try to use cntlm  http://cntlm.sourceforge.net/  <x-msg://292/> before starting the java client :
  >>
  >>     >cntlm.exe -c cntlm.ini -v
  >>     cntlm: Proxy listening on 127.0.0.1:3128
  >>     cntlm: Resolving proxy TheBorringProxy ...
  >>     cntlm: Workstation name used: localhost
  >>     cntlm: Using following NTLM hashes: NTLMv2(1) NT(0) LM(0)
  >>     cntlm: PID 980: Cntlm ready, staying in the foreground
  >>
  >>     Then I start my java client  :
  >>     java -Dhttp.proxySet=true -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=3128 MyClass
  >>     -applicationURL http://www.externaldomain.com/cgi-bin/WebObjects/MyAppli.woa <x-msg://292/>
  >>
  >>     But not better, the java client cannot create the socket :
  >>     com.webobjects.foundation.NSForwardException for java.io.IOException: Timed out trying to create Socket
  >>      at com.webobjects.foundation.NSSocketUtilities._getSocketWithTimeout(NSSocketUtilities.java:145)
  >>      at com.webobjects.foundation.NSSocketUtilities.getSocketWithTimeout(NSSocketUtilities.java:100)
  >>      at com.webobjects.foundation.NSSocketUtilities.getSocketWithTimeout(NSSocketUtilities.java:58)
  >>      at com.webobjects.eodistribution.client.EOHTTPChannel.createSocket(EOHTTPChannel.java:401)
  >>
  >>     Am I missing something ? May be I am wrong about the way i start my java client ?
  >>
  >>     Thanks for any idea.
  >>
  >>     Pierre
  >
  >
  >
  >  _______________________________________________
  > Do not post admin requests to the list. They will be ignored.
  > Webobjects-dev mailing list      ([email protected])
  > Help/Unsubscribe/Update your Subscription:
  > http://lists.apple.com/mailman/options/webobjects-dev/aurelien.minet%40univ-provence.fr
  >
  > This email sent to [email protected]

  _______________________________________________
  WebObjects-dev mailing list
  [email protected]
  http://www.omnigroup.com/mailman/listinfo/webobjects-dev

_______________________________________________
WebObjects-dev mailing list
[email protected]
http://www.omnigroup.com/mailman/listinfo/webobjects-dev