Hi there,
after upgrading from 1.1.1 to 1.1.2 of restlet, i discovered a strange
problem. We are using Encoder in this way in createRoot() of Application:
Encoder encoder = new Encoder( getContext() );
encoder.setNext( a router with resources... );
root.setNext( encoder );
The issue is:
[csta...@marvin tmp]$ curl
http://localhost:8081/nexus/service/local/repository_mirrors_status/apache-snapshots-u
admin:admin123 -H "Accept-Encoding: gzip" -I
HTTP/1.1 200 OK
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Set-Cookie: JSESSIONID=1hylic0bnkjx0;Path=/nexus
Content-Encoding: gzip
Content-Type: application/xml; charset=UTF-8
Last-Modified: Wed, 11 Feb 2009 00:23:31 GMT
Content-Length: 30
Date: Wed, 11 Feb 2009 00:23:48 GMT
Vary: Accept-Charset, Accept-Encoding, Accept-Language, Accept
Accept-Ranges: bytes
Server: Noelios-Restlet-Engine/1.1..2
[csta...@marvin tmp]$ curl
http://localhost:8081/nexus/service/local/repository_mirrors_status/apache-snapshots-u
admin:admin123 -H -I
HTTP/1.1 200 OK
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Set-Cookie: JSESSIONID=1v6vbaglm99og;Path=/nexus
Content-Type: application/xml; charset=UTF-8
Last-Modified: Wed, 11 Feb 2009 00:23:31 GMT
Content-Length: 30
Date: Wed, 11 Feb 2009 00:23:51 GMT
Vary: Accept-Charset, Accept-Encoding, Accept-Language, Accept
Accept-Ranges: bytes
Server: Noelios-Restlet-Engine/1.1..2
As you see, the 1st request in with content-encoding "gzip", the 2nd one is
"plain". The body is sent accordingly, it is fine. But look at the content
length header, it contains the "identity" size in both cases.... and it
confuses a lot all known clients (browsers and apps).
Any idea? Is anyone else able to reproduce this?
~t~
------------------------------------------------------
http://restlet.tigris.org/ds/viewMessage.do?dsForumId=4447&dsMessageId=1136517