带有 com.sun.net.HttpServer 和 .net 的 JAX WS

发布于 2024-10-11 03:28:29 字数 303 浏览 6 评论 0原文

我有一个非常令人沮丧的问题。我有一个使用 JAX WS 创建的 Web 服务 注释和 Endpoint.publish(...) 技巧。当然,它使用com.sun.net.HttpServer。当我尝试在 Visual Studio 中添加服务引用时,它不会移动。服务器说:

不支持的内容类型:仅接受 text/xml

但 .net 要求使用 application/soap+xml 内容类型。

如何更改 jax ws 中的内容类型?或者,我如何更改 Visual Studio 添加参考内容的内容类型。

谢谢。真是令人沮丧!

I have a very frustrating problem. I have a web service created with JAX WS
annotations and Endpoint.publish(...) trick. Of course, it uses com.sun.net.HttpServer. When I try to add a service reference in Visual studio, it won't budge. The server says:

unsupportent content-type: accepted only text/xml

But .net asks with application/soap+xml content-type.

How do i change the content-type in jax ws? Or, how do i change the content type of visual studio add reference thingy.

Thank you. It's very frustrating!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

一世旳自豪 2024-10-18 03:28:29

谷歌搜索后我发现...

嗨,

我已经解决了这个问题。

'application/soap+xml' 是内容
用于 SOAP 1.2 消息的类型
而 text/xml 用于 SOAP 1.1。
因此客户端发送 SOAP 1.2
请求和服务只需要 SOAP
1.1.

Metro 默认使用 SOAP 1.1。如何
启用 SOAP 1.2 绑定的说明
这里:
- http://forums.java.net/jive/thread.jspa?messageID= 322894
- https://metro.dev.java.net/1.4/docs/soap12。 html

参考。希望这有帮助:)

编辑:尝试以下注释...

@WebService 
@BindingType(javax.xml.ws.soap.SOAPBinding.SOAP12HTTP_BINDING) 

或者

Endpoint endpoint = Endpoint.create("http://java.sun.com/xml/ns/jaxws/2003/05/soap/bindings/HTTP/", impl); 
endpoint.publish("http://localhost:9080/PatientDiscovery"); 

After googling i found...

Hi,

I've resolved the problem.

'application/soap+xml' is the content
type used for SOAP 1.2 messages
whereas text/xml is used for SOAP 1.1.
Hence the client send SOAP 1.2
requests and service expects only SOAP
1.1.

Metro uses SOAP 1.1 by default. How to
enable SOAP 1.2 binding is explained
here:
- http://forums.java.net/jive/thread.jspa?messageID=322894
- https://metro.dev.java.net/1.4/docs/soap12.html

Reference. Hope this helps :)

EDIT: try the below annotations...

@WebService 
@BindingType(javax.xml.ws.soap.SOAPBinding.SOAP12HTTP_BINDING) 

OR

Endpoint endpoint = Endpoint.create("http://java.sun.com/xml/ns/jaxws/2003/05/soap/bindings/HTTP/", impl); 
endpoint.publish("http://localhost:9080/PatientDiscovery"); 
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文