On 22.10.2009 11:45, Paul Sandoz wrote:
> On Oct 22, 2009, at 11:38 AM, Andy wrote:
>> On 21.10.2009 18:57, Paul Sandoz wrote:
>>> On Oct 21, 2009, at 6:40 PM, Andy wrote:
>>>> Hi,
>>>>
>>>> how can I add an additional header to this call:
>>>> Response.temporaryRedirect(uri).build()
>>> Response.temporaryRedirect(uri).header("X-FOO", "foo").build()
>> Somehow it doesn't work. I have set up a mock-up server that receives
>> this message an prints out all header fields. The result looks like
>> this "user-agent, host, accept, connection" but the header field
>> "X-FOO" is missing.
> What about the Location header?
>
> Perhaps you are observing the response to the request made to the
> redirected URI?
>
> What client are you using? is it performing automatic redirection on
> requests?
The mentioned headers are received at the redirected URI
(
http://localhost:9998/mockup/dummy). This is where the header "X-FOO"
is expected, but it is missing.
I use the com.sun.jersey.api.client.Client which performs a GET request
to the server I'm implementing (running at
http://../mypath). This
server should add an additional header and redirect the request to
http://localhost:9998/mockup/dummy.
The client even receives the correct response so everything works fine,
except for adding the header.
If I already add the header on client side, it is received at
http://localhost:9998/mockup/dummy but this is what I want to avoid.
Andy
>> This is my code:
>>
>> @Path("mypath")
>> @GET
>> @Produces(MediaType.APPLICATION_JSON)
>> public Response myMethod() {
>> URI uri =
>> UriBuilder.fromUri("http://localhost:9998/mockup/dummy").build();
>> return Response.temporaryRedirect(uri).header("X-FOO", "foo").build();
>> }