使用 JBoss 返回两种不同的 MIME 类型时出现 RESTEASY002142 警告
RESTEASY002142 warnings when returning two different MIME types with JBoss
我正在尝试将 JBoss 服务器从 RESTEasy 3.0.10 升级到 3.1.0。我们的一项资源允许 return 纯文本或 XML 数据。它工作正常,但会产生警告消息 "RESTEASY002142: Multiple resource methods match request".
代码基本上是这样的:
@Path(value = "info")
public interface InfoResource {
@GET
@Produces("text/plain")
public InfoObject getInfo();
@GET
@Produces("text/xml")
public InfoObject getInfoXML();
}
每当服务器收到对 "info" 资源的请求并且未指定带有 "Accept" header 的首选 return 类型时,就会出现警告消息。这段代码有什么问题吗?有什么办法可以去掉暖心消息吗?
请注意,此 documentation 中 JBoss 中的 "Library" class 示例会产生相同的错误消息。
我可以通过将两种可能的 return 类型放入 "Produces" 注释中来消除警告消息。
A MessageBodyWriter
会将 InfoObject 转换为所需的格式。
@Path(value = "info")
public interface InfoResource {
@GET
@Produces({"text/plain", "text/xml"})
public InfoObject getInfo();
}
我正在尝试将 JBoss 服务器从 RESTEasy 3.0.10 升级到 3.1.0。我们的一项资源允许 return 纯文本或 XML 数据。它工作正常,但会产生警告消息 "RESTEASY002142: Multiple resource methods match request".
代码基本上是这样的:
@Path(value = "info")
public interface InfoResource {
@GET
@Produces("text/plain")
public InfoObject getInfo();
@GET
@Produces("text/xml")
public InfoObject getInfoXML();
}
每当服务器收到对 "info" 资源的请求并且未指定带有 "Accept" header 的首选 return 类型时,就会出现警告消息。这段代码有什么问题吗?有什么办法可以去掉暖心消息吗?
请注意,此 documentation 中 JBoss 中的 "Library" class 示例会产生相同的错误消息。
我可以通过将两种可能的 return 类型放入 "Produces" 注释中来消除警告消息。
A MessageBodyWriter
会将 InfoObject 转换为所需的格式。
@Path(value = "info")
public interface InfoResource {
@GET
@Produces({"text/plain", "text/xml"})
public InfoObject getInfo();
}