java - 内容类型 text/xml 错误

标签 java jboss ejb jax-ws exchangewebservices

我现在正在开发我的Web服务(我使用jax ws,jboss应用程序服务器版本4.0.4,EJB来实现Web服务),当我开始与将要使用它的人测试我的Web服务时,所有对我来说没问题,但他们的软件出现错误

{"响应消息的内容类型 text/xml;charset=UTF-8 与绑定(bind)的内容类型 (application/soap+xml;charset=utf-8) 不匹配。如果使用自定义编码器,请确保正确实现 IsContentTypeSupported 方法}

对我来说,我的网络服务似乎使用soap 1.1而不是soap 1.2,是否可以通过我的类上的jax ws注释来设置它?我找到了 @BindingType 注释并尝试在我的 EJB 类中使用 @BindingType(SOAPBinding.SOAP12HTTP_BINDING),但 wsdl 仍然与以前相同,并且内容类型没有更改。非常感谢

最佳答案

我认为这不是 SOAP 版本的问题。

Exchange Server 对字符集规范非常挑剔。它必须是 charset=utf-8、小写且不带引号。我必须覆盖我的 SOAP 代码添加到 SOAP 调用的默认 charset="utf-8"

我无法帮助您如何在 Java 中进行此覆盖,因为我正在使用 Delphi。也许其他读者可以编辑我的答案,并将最后一段替换为在 Java 中执行此操作的正确说明。

关于java - 内容类型 text/xml 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23919419/

相关文章:

java - 尝试检测玩家在我的 Minecraft mod 的库存中是否有特定元素

java - android 中的 Calendar 对象仅返回默认值。为什么?

java - 如何使用 JDBC 在 PostgreSQL 中传递一组复合类型 (UDT)

spring - 为托管在不同服务器上的 Web 应用程序实现 SSO

java - 向数据库插入数据但出现 MySQLSyntaxErrorException : You have an error in your SQL syntax 错误

java - 对生成的 QR 码进行样式/着色

java - 读取超时属性有什么作用?

java - 为什么不提交 Requires_New 事务?

jakarta-ee - 将@SessionScoped CDI Bean 注入(inject)@Stateless EJB

java - 为什么我们在 Wildfly 中需要以下用于 EJB 3.2 的 jboss jar?