Hi Saminda,

Is this the perfect solution. The reason is that if you look at HttpClient code, you will notice that whether to use Basic or NTLM, it is resolved at runtime. (There is a message of "NTLM scheme selected" or something like that.

Let's say the user specifies "domain/user, password", I guess the best solution is to dynamically decide whether to use NTLM and Basic. In another words, with the same input, based on handshake response from server, the client decide whether to use NTCredential or UsernamePasswordCredential.

Another benefit is that if Kerberos or Digest is supported, then the user's code doesn't have to change. Otherwise user (like me) has to write


HttpTransportProperties
.DigestAuthentication dgiestAuthentication =
                    new HttpTransportProperties().new DigestAuthentication();


Plus, it's the server admin who decides what auth scheme to use, or simultaneous allow multiple. If the client code/configuration has to change, it's very inconvenient.

Regards,
Jeff
 


On 6/9/06, Saminda Abeyruwan <[EMAIL PROTECTED]> wrote:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi Jeff, Dims, Paul and all,

To do NTLM Authentication one has to do the following now,

...
<snippet/>

HttpTransportProperties.NTLMAuthentication ntlmAuthentication =
                    new HttpTransportProperties().new NTLMAuthentication();

            ntlmAuthentication.setUsername("axis2");
            // other credentials.

            options.setProperty(

org.apache.axis2.transport.http.HTTPConstants.NTLM_AUTHENTICATION,
                    ntlmAuthentication);

...

To do Basic Authentication one has to do the following,

...
<snippet/>

HttpTransportProperties.BasicAuthentication basicAuthentication =
                    new HttpTransportProperties().new BasicAuthentication();

            basicAuthentication.setUsername("axis2");
            basicAuthentication.setPassword("axis2");
            options.setProperty(

org.apache.axis2.transport.http.HTTPConstants.BASIC_AUTHENTICATION,
                    basicAuthentication);
...

Jeff, please try it and let us know the results. Will update the docs asap.

Thank you

Saminda

Jeff Ling wrote:
> Hi Dims,
>
> Thanks a lot!
>
> When would it be patched? And what's the plan for the next stable release?
>
> Thanks!
>
> Jeff
>
> On 6/8/06, *Davanum Srinivas * <[EMAIL PROTECTED]
> <mailto:[EMAIL PROTECTED]>> wrote:
>
>     Jeff,
>
>     Yep. that's the one. Basically http client tries to send the data and
>     when it fails tries to send it again. serializeAndConsume by design
>     does not cache the information (does not build the om tree). This is
>     good news just replacing one for the other. We'll take this account
>     and may be add a flag for this behavior.
>
>     Thanks,
>     dims
>
>     On 6/8/06, Jeff Ling < [EMAIL PROTECTED]
>     <mailto:[EMAIL PROTECTED]>> wrote:
>     > Hi Paul,
>     >
>     > I assume you meant the
>     >                     element.serializeAndConsume(bytesOut, format);
>     > in         public byte[] writeBytes()
>     >
>     > right? No, that didn't work. However, following your lead, I
>     changed the
>     > same function in
>     >
>     >         private void handleOMOutput(OutputStream out, boolean
>     doingMTOM)
>     > throws XMLStreamException {
>     >             format.setDoOptimize(doingMTOM);
>     >
>     >             element.serializeAndConsume (out, format);
>     >         }
>     >
>     > to
>     >
>     >         private void handleOMOutput(OutputStream out, boolean
>     doingMTOM)
>     > throws XMLStreamException {
>     >              format.setDoOptimize(doingMTOM);
>     >               element.serialize(out, format);
>     >          }
>     >
>     > That fixed it. Maybe we are using different versions so the line
>     count is
>     > different? Please confirm.
>     >
>     > This is great!
>     >
>     > Jeff
>     >
>     >
>     > On 6/8/06, Paul Fremantle <[EMAIL PROTECTED]
>     <mailto:[EMAIL PROTECTED]>> wrote:
>     > > Jeff
>     > >
>     > > We have an idea :-) Can you help us test if its any good?
>     > >
>     > > Can you please try this fix:
>     > >
>     > > At line 194 in
>     > org.apache.axis2.transport.http.SOAPOverHTTPSender.
>     > >
>     > > Please change
>     > > element.serializeAndConsume (out, format); to
>     > > element.serialize(out, format);
>     > >
>     > > If that works for you then we can craft a proper fix around this.
>     > >
>     > > Thanks
>     > >
>     > > Paul
>     > >
>     > > --
>     > > Paul Fremantle
>     > > VP/Technology, WSO2 and OASIS WS-RX TC Co-chair
>     > >
>     > > http://bloglines.com/blog/paulfremantle
>     <http://bloglines.com/blog/paulfremantle >
>     > > [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
>     > >
>     > > "Oxygenating the Web Service Platform", www.wso2.com
>     <http://www.wso2.com>
>     > >
>     >
>     >
>
>
>     --
>     Davanum Srinivas : http://wso2.com/blogs/
>
>     ---------------------------------------------------------------------
>     To unsubscribe, e-mail: [EMAIL PROTECTED]
>     <mailto:[EMAIL PROTECTED]>
>     For additional commands, e-mail: [EMAIL PROTECTED]
>     <mailto:[EMAIL PROTECTED]>
>
>

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD4DBQFEiVBdYmklbLuW6wYRAuTXAJwK6LPFvAduT/GMRraFAA8EIRh0iwCY3DBi
rnkK5RBPaT0ZdGDSlJTRVw==
=S+ml
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Reply via email to