Hi Padraig The patch has been applied. Many thanks for having contributed it Cheers
Oleg On Fri, 2003-03-07 at 16:14, Padraig O'hIceadha wrote: > Hi Oleg, > > That would be really excellent. > > Thanks a lot, > > Padraig > > Kalnichevski, Oleg wrote: > > >Hi Padraig > > > >Makes sense to me. If no one loudly objects, I'll apply the patch by Monday the > >latest (or shall I say monday? ;-)) > > > >Cheers > > > >Oleg > > > >-----Original Message----- > >From: Padraig O'hIceadha [mailto:[EMAIL PROTECTED] > >Sent: Freitag, 7. M�rz 2003 16:00 > >To: [EMAIL PROTECTED] > >Subject: [PATCH] HttpClient was rejecting some cookies a browser would > >accept > > > > > >Hi, > > > > I found that cookies generated by WebLogic were being rejected by > >HttpClient as it didn't like the format of the Expires field. > > > > From reading the specs I think that HttpClient is not at fault, in > >that WebLogic does not seem to be using a 100% correct date format. > > > > However their error is minor (it uses incorrect case for the > >day and month names) and I think it would be useful if HttpClient > >were forgiving in this regard. > > > > For example, WebLogic sends > >expires=thursday, 06-mar-2003 04:44:00 GMT > > where it should send > >expires=Thursday, 06-Mar-2003 04:44:00 GMT > > > > This causes a problem in the parse method in HeaderElement > >where it has extra code for recognising when a , in the cookie > >string is part of a date. > > > > To check this it does a case sensitive match against all the > >valid combinations ("Monday", "Tuesday" etc). As the match is > >case sensitive it doesn't recognise the weblogic expires as a > >date and the expires field ends up simply as "thursday", which > >later fails parsing by SimpleDateFormat. > > > > The patch below changes this to use a case insensitive > >comparison. > > > > Regards, > > > > Padraig > > > >Index: HeaderElement.java > >=================================================================== > >RCS file: > >/home/cvspublic/jakarta-commons/httpclient/src/java/org/apache/commons/httpclient/HeaderElement.java,v > >retrieving revision 1.16 > >diff -u -r1.16 HeaderElement.java > >--- HeaderElement.java 31 Jan 2003 00:33:36 -0000 1.16 > >+++ HeaderElement.java 7 Mar 2003 14:41:07 -0000 > >@@ -300,22 +300,24 @@ > > * the expires date format is "Wdy, DD-Mon-YY HH:MM:SS > >GMT". > > * Notice that there is always comma(',') sign. > > * For the general cases, rfc1123-date, rfc850-date. > >+ * NB some servers send the day & month names in the > >wrong case > > */ > > if (tokenizer.hasMoreTokens()) { > >- if (nextToken.endsWith("Mon") > >- || nextToken.endsWith("Tue") > >- || nextToken.endsWith("Wed") > >- || nextToken.endsWith("Thu") > >- || nextToken.endsWith("Fri") > >- || nextToken.endsWith("Sat") > >- || nextToken.endsWith("Sun") > >- || nextToken.endsWith("Monday") > >- || nextToken.endsWith("Tuesday") > >- || nextToken.endsWith("Wednesday") > >- || nextToken.endsWith("Thursday") > >- || nextToken.endsWith("Friday") > >- || nextToken.endsWith("Saturday") > >- || nextToken.endsWith("Sunday")) { > >+ String possibleExpiresField = nextToken.toLowerCase(); > >+ if (possibleExpiresField.endsWith("mon") > >+ || possibleExpiresField.endsWith("tue") > >+ || possibleExpiresField.endsWith("wed") > >+ || possibleExpiresField.endsWith("thu") > >+ || possibleExpiresField.endsWith("fri") > >+ || possibleExpiresField.endsWith("sat") > >+ || possibleExpiresField.endsWith("sun") > >+ || possibleExpiresField.endsWith("monday") > >+ || possibleExpiresField.endsWith("tuesday") > >+ || possibleExpiresField.endsWith("wednesday") > >+ || possibleExpiresField.endsWith("thursday") > >+ || possibleExpiresField.endsWith("friday") > >+ || possibleExpiresField.endsWith("saturday") > >+ || possibleExpiresField.endsWith("sunday")) { > > > > nextToken += "," + tokenizer.nextToken(); > > } > > > > > >--------------------------------------------------------------------- > >To unsubscribe, e-mail: [EMAIL PROTECTED] > >For additional commands, e-mail: [EMAIL PROTECTED] > > > > > >--------------------------------------------------------------------- > >To unsubscribe, e-mail: [EMAIL PROTECTED] > >For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
