我有一个CookingEvent.class,它是Event.class的子类,hibernate继承策略是@ Inheritance(strategy = Inheritance type。已加入)。当我试图发送一个列表对象作为get响应时。我不例外
2016-08-25 11:49:22.351错误11944---[nio-8189-exec-1]o.a.c.c.c.[.[/]。[servletContainer]:Servlet。路径为[]的上下文中servlet[servletContainer]的service()引发异常[org.glassfish.jersey.server.ContainerException:com.fasterxml.jjackson.databind.JsonMappingException:对象不是声明类的实例(通过引用链:java.util.ArrayList[0]-
java.lang.IllegalArgumentException:对象不是sun.reflect.NativeMethodAccessorImpl处声明类的实例。位于com.fasterxml.jockson.databind.ser.BeanPropertyWriter.get(BeanProportyWriter java:726)的sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethAccessorInpl.java:62)的invoke0(本机方法)com.fasterxml.jockson.databind.ser.BeanPropertyWriter.serializeAsField(BeanProportyWriter.java:506)位于com.faster xml.joctson.databond.ser.std.BeanSerializerBase.serializationFields(BeanSerializerBase.java:644)位于com.sfasterxml.jockson.databind.ser.BeanSerializer.serializer(BeanArializer.java:152)
@Entity
@Table(name = "users")
@JsonAutoDetect
public class Users implements java.io.Serializable {
@JsonBackReference
private List<Event> eventByUser = new ArrayList<Event>(
0);
@Id
@GeneratedValue
@Column(name = "USER_ID", unique = true)
public Long getUserId() {
return userIds;
}
@OneToMany(fetch = FetchType.LAZY, mappedBy = "user")
@Fetch(FetchMode.JOIN)
@JsonInclude(JsonInclude.Include.NON_EMPTY)
@JsonIgnore
public List<Event> getEventByUser() {
return eventByUser;
}
}
@Entity
@Table(name = "EVENT")
@Inheritance(strategy=InheritanceType.JOINED)
public class Event implements java.io.Serializable {
private Integer eventId;
@Id
@GeneratedValue
@Column(name = "COOKING_EVENT_ID", unique = true)
public Integer getEventId() {
return eventId;
}
private Users user;
@ManyToOne(fetch = FetchType.LAZY)
@Fetch(FetchMode.SELECT)
@JsonIgnore
@JsonInclude(JsonInclude.Include.NON_EMPTY)
@JoinColumn(name = "ASSIGNED_USER_ID", nullable = false)
@JsonManagedReference
public Users getUser() {
return user;
}
public void setEventId(Integer eventId) {
this.eventId = eventId;
}
@Entity
@Table(name = "COOKING_REQUEST_EVENT") @PrimaryKeyJoinColumn(name="EVENT_ID")
public class CookingRequestEvent extends Event implements java.io.Serializable {
//Other Variables along with setters and getters
}
我有一个泽西岛控制器,如下所示,它返回一个列表
@GET
@Path("/cookingEventsByUser/{userId}")
@Produces({ MediaType.APPLICATION_JSON})
public List<CookingEvent> getEventsById(@PathParam("userId") Long id)
throws JsonGenerationException, JsonMappingException, IOException {
List<CookingEvent> events = new ArrayList<CookingEvent>();
events = cookingEventServices.getCookingEventsByUser(id);
}
我正在使用Spring Boot Jersey hibernate
问题已解决。
已添加
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include =As.PROPERTY, property = "data")
@JsonSubTypes({ @Type(value = CookingEvent.class, name = "cookingEvent"), @Type(value = CookingRequestEvent.class, name = "cookingRequest") })
问题内容: 我已经有一段时间没有接触过Mockito了,我也从未广泛使用它。但是今天,在一些新代码中,我想使用最佳实践,因此我使用以下Java版本退出了模仿内核2.0.54-beta: 我需要此接口的实例进行测试: https://bitbucket.org/globalmentor/rincl/src/bf0e8875a1bae16247dd904e0b8bc067c9f8abc9/src/ma
我有一段时间没有接触过Mockito,也从来没有大量使用过它。但是今天在一些新代码中,我希望使用最佳实践,所以我使用以下Java版本推出了mockito-core 2.0.54-beta: 要重现此问题,请克隆https://bitbucket.org/globalmentor/rincl.git并签出commit2f88d7c5e5ac17b6d316ed54c12cb7b447b7d6ac。然
问题内容: 这个问题在Google上到处都有,但我仍然遇到问题。这就是我想要做的。因此,就像标题状态一样,我遇到了“对象不是声明类的实例”错误。有任何想法吗?谢谢! Main.java TestFunction.java 问题答案: 您正在使用该类调用该方法,但需要一个实例。试试这个:
我已经设置了一个Spring Boot项目,并使用castor xml依赖关系将POJO转换为xml。 在为POJO调用封送处理方法时遇到问题。我查阅了stackoverflow的其他相关问题,但没有一个能解决我的场景。 有一个toString方法,它位于Spring组件中。 以下是片段: 这是客户端内部的封送方法(castor之前自动生成的类): 以下是相同的堆栈跟踪: 这里需要注意的是,当我执
用户类 我把这个复制方法叫做 并在执行writeMethod.invoke(dest,val)时获得以下异常。有人能帮忙吗? 对象不是在java.base/jdk.internal.reflect.nativeMethodAccessorImpl.Invoke0(原生方法)在java.base/jdk.internal.reflect.nativeMethodAccessorImpl.Invoke
问题内容: 我的ejb项目使用的是Hibernate 4.3.6和Glassfish 4.0。 我的考试道课: 和POJO类Foo.class: persistence.xml: 我可以列出表数据,通过查询获取数据,也可以从表中删除数据。但是我不能坚持或合并。 例外是: 我在哪里做错了? 此项目在具有persistence.xml版本1.0(jpa)且没有此行的Glassfish 3.1上工作: