hc-httpclient-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Godbey, David J. (HQ-LM020)[DIGITAL MANAGEMENT INC.]" <david.j.god...@nasa.gov>
Subject 4.3 issues
Date Fri, 31 May 2013 12:48:30 GMT
Some of you have helped me in the past, so the initial paragraph you already know, but for
I develop business process applications that operate around Microsoft Exchange and use EWS
to manipulate Exchange objects. Since my agency went to NTLMv2 authentication, I could no
longer use Java to authenticate to Exchange (all Red Hat Enterprise servers). To solve my
authentication dilemma, I've set up a proxy to handle communications with Exchange since http
components provided me the best way to authenticate and interact with Exchange. In a nutshell,
my JAX-WS application interacts with a local "proxy servlet" that unloads the SOAP request,
packs the request into an HttpPost object all folded up nicely with the NTLMv2 authentication
objects, and gets SOAP response out of the entity returned by the Exchange server. The SOAP
response is then returned to the proxy client. One other thing, in addition to the XML SOAP
packet, the proxy must turnaround some of the HTTP headers as well. My last deployment went
with core and client versions 4.2. Everything is working great on production right now.

How can I help you? I can always stick with 4.2, but I'm willing to do my part to help insure
a great HC product. You guys are among the most active, competent, and helpful open source
practitioners, so anything I can do to help, let me know. Anyway, here is what I've found.

I'm in the midst of a new development cycle to accommodate an upgrade to our Exchange server.
I collect my jars using ivyresolve set to latest.release, and ivy gathered up the 4.3 jars
(RCs I think) posted to maven site recently. My business processing has been broken in these
new jars. What happens is when I contact the Exchange server with my SOAP request, Exchange
returns this HTML error packet (which kinda sucks since the whole process is supposed to by
XML based (why don't they send back an XML error packet), so the error my client sees is malformed
XML error):
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http<http://www.w3.org/TR/html4/strict.dtd>://www.w3.org/TR/html4/strict.dtd
<META HTTP-EQUIV="Content-Type" Content="text/html; charset=us-ascii"></HEAD>
<BODY><h2>Bad Request - Invalid Verb</h2>
<hr><p>HTTP Error 400. The request verb is invalid.</p>
I believe the request verb is the Exchange method requested, in this case, it was FindItem,
and the request verb is supposed to be placed as an Http header.<http://www.w3.org/TR/html4/strict.dtd>
What I notice is that some of the classes I use have been deprecated in 4.3, including: DefaultHttpClient,
ClientConnectionManager, HttpParams, and HttpProtocolParams.<http://www.w3.org/TR/html4/strict.dtd>
Not only are they deprecated, but they appear to be broken for my purposes. I don't really
care about this if you don't since I can use 4.2, but if you do and would like me to trouble
shoot, I am willing to do this.

Alternatively, since I've completed my development work and submitted my artifacts to sysops
using HC 4.2, I am now looking to convert my proxy servlet to use 4.3 for the next cycle.
When I finish that process, hopefully all will work, and I will certainly let you know. I
understand that you do not have access to an Exchange server running NTLMv2, so I'm happy
to provide you with test activities there.

Please let me know if there is anything more you'd like me to do.

Thanks for all the good work,

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message