严重:未找到 class java.util.Vector 的消息正文作者,ContentType:application/xml
SEVERE: No message body writer has been found for class java.util.Vector, ContentType: application/xml
我有一个最小的 JAX-RS 应用程序。我正在尝试生成 XML 响应,但我得到了以下异常。资源应该 return 一个 Country 对象列表,但异常是指一个 Vector。我是 运行 TomEE Web 配置文件 9.0.0-M7 和 Jakarta Web 配置文件 9.1。
异常
Mar 04, 2022 12:33:42 PM org.apache.cxf.jaxrs.utils.JAXRSUtils logMessageHandlerProblem
SEVERE: No message body writer has been found for class java.util.Vector, ContentType: application/xml
申请
import jakarta.ws.rs.ApplicationPath;
import jakarta.ws.rs.core.Application;
@ApplicationPath("/api")
public class RestApplication extends Application {
}
国家资源
@Path("/country")
public class CountryResource {
@GET
@Produces(MediaType.APPLICATION_XML)
public List<Country> getCountries() {
return Database.get().findCountries();
}
}
国家查询
public List<Country> findCountries() {
return em.createQuery("SELECT c FROM Country c ORDER BY c.countryName", Country.class).getResultList();
}
需要使用 XmlRootElement 注释对国家/地区进行注释。
我有一个最小的 JAX-RS 应用程序。我正在尝试生成 XML 响应,但我得到了以下异常。资源应该 return 一个 Country 对象列表,但异常是指一个 Vector。我是 运行 TomEE Web 配置文件 9.0.0-M7 和 Jakarta Web 配置文件 9.1。
异常
Mar 04, 2022 12:33:42 PM org.apache.cxf.jaxrs.utils.JAXRSUtils logMessageHandlerProblem
SEVERE: No message body writer has been found for class java.util.Vector, ContentType: application/xml
申请
import jakarta.ws.rs.ApplicationPath;
import jakarta.ws.rs.core.Application;
@ApplicationPath("/api")
public class RestApplication extends Application {
}
国家资源
@Path("/country")
public class CountryResource {
@GET
@Produces(MediaType.APPLICATION_XML)
public List<Country> getCountries() {
return Database.get().findCountries();
}
}
国家查询
public List<Country> findCountries() {
return em.createQuery("SELECT c FROM Country c ORDER BY c.countryName", Country.class).getResultList();
}
需要使用 XmlRootElement 注释对国家/地区进行注释。