Java jax-ws:设置请求的内容类型

Java jax-ws:设置请求的内容类型,java,wcf,web-services,client,jax-ws,Java,Wcf,Web Services,Client,Jax Ws,最近我一直在尝试使用JAX-WS使用.net WCF rest服务。由于服务的安全性,我必须设置一个带有签名的自定义HTTP头授权。我通过这样做解决了这个问题: BindingProvider bp = (BindingProvider) port; bp.getRequestContext().put(MessageContext.HTTP_REQUEST_HEADERS, Collections.singletonMap("Au

最近我一直在尝试使用JAX-WS使用.net WCF rest服务。由于服务的安全性,我必须设置一个带有签名的自定义HTTP头授权。我通过这样做解决了这个问题:

BindingProvider bp = (BindingProvider) port;
bp.getRequestContext().put(MessageContext.HTTP_REQUEST_HEADERS,
                                Collections.singletonMap("Authorization",Collections.singletonList(authHeader)));
但是,调用服务时出现异常:

com.sun.xml.internal.ws.server.UnsupportedMediaException: Unsupported Content-Type: text/html; charset=UTF-8 Supported ones are: [text/xml]
com.sun.xml.internal.ws.encoding.StreamSOAPCodec.decode(StreamSOAPCodec.java:284)
com.sun.xml.internal.ws.encoding.StreamSOAPCodec.decode(StreamSOAPCodec.java:118)
com.sun.xml.internal.ws.encoding.SOAPBindingCodec.decode(SOAPBindingCodec.java:278)
com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.process(HttpTransportPipe.java:180)
com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.processRequest(HttpTransportPipe.java:83)
com.sun.xml.internal.ws.transport.DeferredTransportPipe.processRequest(DeferredTransportPipe.java:105)
在我看来,服务中的请求可能需要是text/xml内容类型。我怎么设置这个?我在谷歌上搜索了很多,也阅读了一些文档,但我似乎无法理解。当然,例外情况也可能是内容类型设置以外的内容(因为我已经读到默认情况下jax-ws使用text/xml),但我不确定


提前谢谢

您将得到一个文本/html内容类型作为响应返回

大多数时候,当我收到这个错误时,是服务器发送了一个html错误页面


如果您有办法记录响应,您应该能够准确地看到问题所在

谢谢你的回复-所以你认为请求已经转到wbservice,我可能会收到一条html格式的错误消息?这可能实际上是。。。