Hi...
I am playing with my local Zimbra installation (ZD 1.0.4 over Linux) by sending it some test SOAP messages from a custom Java application and I can convince the service to authenticate.
More specifically, I post the following SOAP message through a Java OutputStremWriter (variable w):
w.write("<?xml version='1.0'?>\r\n");
w.write("<soap:Envelope xmlns:soap=\"http://www.w3.org/2003/05/soap-envelope\">\r\n");
w.write("<soap:Body>\r\n");
w.write(" <AuthRequest xmlns=\"urn:zimbraAccount\">\r\n");
w.write(" <account by=\"name">MyAccName@gmail.com</account>\r\n");
w.write(" <password>MyPassword</password>\r\n");
w.write(" </AuthRequest>\r\n");
w.write("</soap:Body>\r\n");
w.write("</soap:Envelope>\r\n");
where
MyAccName@gmail.com is an existing GMail address, the inbox of which I access via ZD (or via any browser), using MyPassword. ZD synchronizes with MyAccName flawlessly.
However, whenever I post the above SOAP message, I get the following response:
<soap:Body>
<soap:Fault>
<soap:Code><soap:Value>soap:Sender</soap:Value>
</soap:Code>
<soap:Reason>
<soap:Text>invalid password: MyPassword</soap:Text>
</soap:Reason>
<soap: Detail>
<Error xmlns="urn:zimbra">
<Code>account.INVALID_PASSWORD</Code>
</Error>
.......
As I said above, MyPassword works fine with both GMail and ZD. The documentation (soap.txt) says that account.INVALID_PASSWORD means "new password doesn't meet the system's rules", but how can this be possible, since it works already and I am not trying to create a new password anyway?
Any ideas?
Thanks!