I dumped the exchange, and Origin isn't in there. I haven't turned on
the logging interceptors yet.
[null, null, null, null, null, null, null, null, null,
org.apache.cxf.message.Message.PROTOCOL_HEADERS={Accept=[text/plain],
Cache-Control=[no-cache], connection=[keep-alive], content-type=[*/*],
Host=[localhost:9000], Pragma=[no-cache], User-Agent=[Apache CXF
${project.version}]}, null, null, null, null, null, null,
HTTP_CONTEXT_MATCH_STRATEGY=stem,
org.apache.cxf.request.url=http://localhost:9000/simpleGet/HelloThere,
null, null, null, null,
org.apache.cxf.request.uri=/simpleGet/HelloThere, null,
org.apache.cxf.resource.method=public java.lang.String
org.apache.cxf.systest.jaxrs.cors.CorsServer.simpleGet(java.lang.String),
HTTP.REQUEST=(GET /simpleGet/HelloThere)@372285153
org.eclipse.jetty.server.Request@16309ee1, null, null,
HTTP.CONFIG=org.eclipse.jetty.servlet.ServletHolder$Config@520ed128,
Accept=text/plain, null,
org.apache.cxf.message.Message.PATH_INFO=/simpleGet/HelloThere, null,
null, null, null, null, null, null, null,
org.apache.cxf.continuations.ContinuationProvider=org.apache.cxf.transport.http.Servlet3ContinuationProvider@4ac5c32e,
null, null, null,
org.apache.cxf.message.Message.IN_INTERCEPTORS=[org.apache.cxf.transport.https.CertConstraintsInterceptor@7d91275b],
null, null, org.apache.cxf.message.Message.QUERY_STRING=null,
HTTP.RESPONSE=HTTP/1.1 200
On Wed, Nov 30, 2011 at 2:47 PM, Benson Margulies<[email protected]> wrote:
I'm failing to set an Origin header with a WebClient. Here's the
client side code, and the header does not make it to the other end.
This makes it rather difficult to write tests for CORS.
On the other hand, should WebClient have native support for the client
side of CORS? That's complex and unpleasant in prospect.
String origin = "http://localhost:" + PORT;
WebClient wc = WebClient.create(origin + "/");
// Since our WebClient doesn't know from Origin, we need to do
this ourselves.
wc.header("Origin", origin);
Response r =
wc.replacePath("/simpleGet/HelloThere").accept("text/plain").get();
assertEquals(Response.Status.OK.getStatusCode(), r.getStatus());