Author: jochen
Date: Fri Aug 18 13:05:03 2006
New Revision: 432707
URL: http://svn.apache.org/viewvc?rev=432707&view=rev
Log:
Basic authentication didn't work with the commons http transport,
if user name or password contained non-ASCII characters.
Modified:
webservices/xmlrpc/trunk/client/src/main/java/org/apache/xmlrpc/client/XmlRpcCommonsTransport.java
webservices/xmlrpc/trunk/pom.xml
webservices/xmlrpc/trunk/src/changes/changes.xml
webservices/xmlrpc/trunk/tests/src/test/java/org/apache/xmlrpc/test/AuthenticationTest.java
Modified:
webservices/xmlrpc/trunk/client/src/main/java/org/apache/xmlrpc/client/XmlRpcCommonsTransport.java
URL:
http://svn.apache.org/viewvc/webservices/xmlrpc/trunk/client/src/main/java/org/apache/xmlrpc/client/XmlRpcCommonsTransport.java?rev=432707&r1=432706&r2=432707&view=diff
==============================================================================
---
webservices/xmlrpc/trunk/client/src/main/java/org/apache/xmlrpc/client/XmlRpcCommonsTransport.java
(original)
+++
webservices/xmlrpc/trunk/client/src/main/java/org/apache/xmlrpc/client/XmlRpcCommonsTransport.java
Fri Aug 18 13:05:03 2006
@@ -30,8 +30,10 @@
import org.apache.commons.httpclient.auth.AuthScope;
import org.apache.commons.httpclient.methods.PostMethod;
import org.apache.commons.httpclient.methods.RequestEntity;
+import org.apache.commons.httpclient.params.HttpMethodParams;
import org.apache.xmlrpc.XmlRpcException;
import org.apache.xmlrpc.XmlRpcRequest;
+import org.apache.xmlrpc.common.XmlRpcStreamConfig;
import org.apache.xmlrpc.common.XmlRpcStreamRequestConfig;
import org.apache.xmlrpc.util.HttpUtil;
import org.apache.xmlrpc.util.XmlRpcIOException;
@@ -99,6 +101,11 @@
protected void setCredentials(XmlRpcHttpClientConfig pConfig) throws
XmlRpcClientException {
String userName = pConfig.getBasicUserName();
if (userName != null) {
+ String enc = pConfig.getBasicEncoding();
+ if (enc == null) {
+ enc = XmlRpcStreamConfig.UTF8_ENCODING;
+ }
+
client.getParams().setParameter(HttpMethodParams.CREDENTIAL_CHARSET, enc);
Credentials creds = new
UsernamePasswordCredentials(userName, pConfig.getBasicPassword());
AuthScope scope = new AuthScope(null,
AuthScope.ANY_PORT, null, AuthScope.ANY_SCHEME);
client.getState().setCredentials(scope, creds);
Modified: webservices/xmlrpc/trunk/pom.xml
URL:
http://svn.apache.org/viewvc/webservices/xmlrpc/trunk/pom.xml?rev=432707&r1=432706&r2=432707&view=diff
==============================================================================
--- webservices/xmlrpc/trunk/pom.xml (original)
+++ webservices/xmlrpc/trunk/pom.xml Fri Aug 18 13:05:03 2006
@@ -223,7 +223,7 @@
<dependency>
<groupId>commons-httpclient</groupId>
<artifactId>commons-httpclient</artifactId>
- <version>3.0</version>
+ <version>3.0.1</version>
<type>jar</type>
<scope>provided</scope>
</dependency>
Modified: webservices/xmlrpc/trunk/src/changes/changes.xml
URL:
http://svn.apache.org/viewvc/webservices/xmlrpc/trunk/src/changes/changes.xml?rev=432707&r1=432706&r2=432707&view=diff
==============================================================================
--- webservices/xmlrpc/trunk/src/changes/changes.xml (original)
+++ webservices/xmlrpc/trunk/src/changes/changes.xml Fri Aug 18 13:05:03 2006
@@ -27,11 +27,14 @@
Basic authentication didn't work, if the base64 encoded string
with
user name and password contained more than 72 characters.
</action>
- <action dev="jochen" type="fix" due-to="Landon Fuller"
- due-to-email="[EMAIL PROTECTED]">
+ <action dev="jochen" type="fix">
Basic authentication didn't work with the commons http transport,
because the commons httpclient wasn't configured to send credentials
by default. (It was waiting for a challenge.)
+ </action>
+ <action dev="jochen" type="fix" issue="XMLRPC-105">
+ Basic authentication didn't work with the commons http transport,
+ if user name or password contained non-ASCII characters.
</action>
</release>
<release version="3.0rc1" date="27-Jul-2006">
Modified:
webservices/xmlrpc/trunk/tests/src/test/java/org/apache/xmlrpc/test/AuthenticationTest.java
URL:
http://svn.apache.org/viewvc/webservices/xmlrpc/trunk/tests/src/test/java/org/apache/xmlrpc/test/AuthenticationTest.java?rev=432707&r1=432706&r2=432707&view=diff
==============================================================================
---
webservices/xmlrpc/trunk/tests/src/test/java/org/apache/xmlrpc/test/AuthenticationTest.java
(original)
+++
webservices/xmlrpc/trunk/tests/src/test/java/org/apache/xmlrpc/test/AuthenticationTest.java
Fri Aug 18 13:05:03 2006
@@ -34,8 +34,8 @@
*/
public class AuthenticationTest extends XmlRpcTestCase {
private static final String PASSWORD =
"98765432109876543210987654321098765432109876543210";
- private static final String USER_NAME =
"01234567890123456789012345678901234567890123456789";
-// + "\u00C4\u00D6\u00DC\u00F6\u00FC\u00E4\u00DF";
+ private static final String USER_NAME =
"01234567890123456789012345678901234567890123456789"
+ + "\u00C4\u00D6\u00DC\u00F6\u00FC\u00E4\u00DF";
/** An interface, which is being implemented by the
* server.