【发布时间】:2023-03-20 11:57:02
【问题描述】:
我需要为数据库创建一个简单的 REST 接口以进行数据迁移。 我所做的是使用 Netbeans 从数据库中生成实体类和 bean,并编写一些简单的 REST 服务。 然后我遇到了 Jettison 的序列化问题,其中只有一个元素的列表不会序列化为列表。
我找到了这个问题的解决方案,似乎都需要 Spring 重新定义序列化提供程序或重新配置 Jettison 的“serializeAsArray”和“arrayKeys”。
有没有办法在不需要 Spring 框架的情况下使用 Jackson 或配置 Jettison?
这里是 REST 服务定义:
@Path("/reseller")
@Produces({"application/json;charset=utf-8"})
public class ResellerWS {
@EJB
private ResellerFacade reseller;
@Path("/{id}")
@GET
public Reseller get(@PathParam("id") long id)
{
ResellerReseller result = reseller.find(id);
return result;
}
这是重要实体的一部分。 resellerdepartmentList 没有序列化为一个包含一个条目的列表,而只是作为条目本身:
@OneToMany(mappedBy = "resellerId", fetch = FetchType.EAGER)
private List<Resellerdepartment> resellerdepartmentList;
...
public List<Resellerdepartment> getResellerdepartmentList() {
return resellerdepartmentList;
}
该服务在 TomEE Plus 1.7.4 下运行
【问题讨论】:
标签: java jakarta-ee jax-rs apache-tomee