- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个带有集合的实体,我想以惰性方式加载实体,但出现错误:
Caused by: com.fasterxml.jackson.databind.JsonMappingException: failed to lazily initialize a collection of role: lu.entities.folders.Folders.requests, could not initialize proxy - no Session (through reference chain: lu.entities.folders.Folders.requests)
at com.fasterxml.jackson.databind.JsonMappingException.wrapWithPath(JsonMappingException.java:210)
at com.fasterxml.jackson.databind.JsonMappingException.wrapWithPath(JsonMappingException.java:177)
at com.fasterxml.jackson.databind.ser.std.StdSerializer.wrapAndThrow(StdSerializer.java:190)
at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:674)
at com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:156)
at com.fasterxml.jackson.databind.ser.DefaultSerializerProvider.serializeValue(DefaultSerializerProvider.java:129)
at com.fasterxml.jackson.databind.ObjectWriter.writeValue(ObjectWriter.java:851)
at org.jboss.resteasy.plugins.providers.jackson.ResteasyJackson2Provider.writeTo(ResteasyJackson2Provider.java:207)
at org.jboss.resteasy.core.interception.AbstractWriterInterceptorContext.writeTo(AbstractWriterInterceptorContext.java:131)
at org.jboss.resteasy.core.interception.ServerWriterInterceptorContext.writeTo(ServerWriterInterceptorContext.java:60)
at org.jboss.resteasy.core.interception.AbstractWriterInterceptorContext.proceed(AbstractWriterInterceptorContext.java:120)
at org.jboss.resteasy.security.doseta.DigitalSigningInterceptor.aroundWriteTo(DigitalSigningInterceptor.java:145)
at org.jboss.resteasy.core.interception.AbstractWriterInterceptorContext.proceed(AbstractWriterInterceptorContext.java:124)
at org.jboss.resteasy.plugins.interceptors.encoding.GZIPEncodingInterceptor.aroundWriteTo(GZIPEncodingInterceptor.java:100)
at org.jboss.resteasy.core.interception.AbstractWriterInterceptorContext.proceed(AbstractWriterInterceptorContext.java:124)
at org.jboss.resteasy.core.ServerResponseWriter.writeNomapResponse(ServerResponseWriter.java:98)
at org.jboss.resteasy.core.SynchronousDispatcher.writeResponse(SynchronousDispatcher.java:466)
... 38 more
Caused by: org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: lu.pgd.ccpd.entities.folders.Folders.requests, could not initialize proxy - no Session
at org.hibernate.collection.internal.AbstractPersistentCollection.throwLazyInitializationException(AbstractPersistentCollection.java:587)
at org.hibernate.collection.internal.AbstractPersistentCollection.withTemporarySessionIfNeeded(AbstractPersistentCollection.java:204)
at org.hibernate.collection.internal.AbstractPersistentCollection.readSize(AbstractPersistentCollection.java:148)
at org.hibernate.collection.internal.PersistentBag.size(PersistentBag.java:261)
at com.fasterxml.jackson.databind.ser.std.CollectionSerializer.serialize(CollectionSerializer.java:88)
at com.fasterxml.jackson.databind.ser.std.CollectionSerializer.serialize(CollectionSerializer.java:24)
at com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:575)
at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:666)
... 51 more
我的实体如下:
@Entity
@Table(name = "FOLDER_FR")
@JsonIdentityInfo(scope=Folders.class, generator = ObjectIdGenerators.PropertyGenerator.class, property="id")
public class Folders implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE)
@Column(name = "FR_ID")
private Long id;
@LazyCollection(LazyCollectionOption.TRUE)
@JsonIgnore
@OneToMany(cascade = CascadeType.ALL, orphanRemoval = true)
@JoinTable(name = "M_REQUESTFOLDER_RR", joinColumns = {
@JoinColumn(name = "RR_FOLDER", referencedColumnName = "FR_ID") }, inverseJoinColumns = {
@JoinColumn(name = "RR_REQUEST", referencedColumnName = "RS_ID") })
private List<Requests> requests = new ArrayList<Requests>();
}
在我的 DAO 中:
@Override
public Folders retrieveFolder(Long id) throws PersistenceException {
Folders folders = entityManager.find(Folders.class, id);
return folders;
}
那么我该如何在 JPA 中解决它呢?当我调用我的方法 retrieveFolder 时出了什么问题?
非常感谢
最佳答案
您必须初始化收集请求。
您可以调用folders.getRequests().iterator()来触发请求的加载。
但最好的方法是使用 JOIN FETCH 编写一个 JPQL 查询来请求急切加载该集合:
SELECT f FROM Folder f JOIN FETCH f.requests r
或者使用 EntityGraph 来完成相同的操作。
查看 Hibernate 文档并搜索 JOIN FETCH 和 EntityGraph。
http://docs.jboss.org/hibernate/orm/5.2/userguide/html_single/Hibernate_User_Guide.html
关于java - 延迟加载错误 : com. fastxml.jackson.databind.JsonMappingException:未能延迟初始化角色集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47902525/
我正在使用 fastxml.jackson 使用 POJO 创建 xml。 我期望输出如下: FirstNameA LastNameA But getting output as:
我想为列表优化 ObjectMapper。要求是我需要在列表的每个元素之后添加一个分隔符。我当前的代码看起来像: StringBuilder strBuilder = new StringBu
我正在使用 fasterxml 2.9.4 并尝试将父类中的 CurrencyAndAmount 类序列化为: 100000 但是我却在下面。该文档表明 isAttribute 是我所需要的,但对我来
如果我有课 A.java : @JacksonXmlRootElement(localName = "A") public class A { } 产生的输出是: 我想在输出中添加更多命名空间,即
我正在尝试使用我定义为端点的 URL 来执行发布请求。 Controller 代码: import java.util.List; import org.springframework.beans.
我正在使用FasterXML library解析我的 CSV 文件。 CSV 文件 的第一行包含列名称。不幸的是我需要重命名这些列。我有一个用于此目的的 lambda 函数,我可以在其中传递 csv
我对java和android编程非常陌生,在我必须维护的应用程序中,我们使用fasterxml jackson从服务器反序列化内容。 我们处理从服务器获得的必须信息(对象),但有些类我们只是不想处理它
这是一个工作代码的简单示例,用于在构造函数中使用 fastXML/Jackson 反序列化字符串列表: private List xyz; @JsonCreator public FooBar(@Js
从 Jackson 1.8.6 迁移到 2.4.2,org.codehaus.jackson.map.ObjectMapper 已更改为 com.fasterxml.jackson.databind.
所以我一直在分解一些 JSON,我需要处理继承。网上的所有内容都说我应该使用 Mixin 来完成这项任务。我的问题是,我找到的所有说明都是针对 Jackson 1.7 或 1.8 的,而我能为 Jac
我正在使用 fasterxml 包 (com.fasterxml.jackson.databind.ObjectMapper) 中的 ObjectMapper 类来序列化一些 POJO . 我面临的问
我有一个带有集合的实体,我想以惰性方式加载实体,但出现错误: Caused by: com.fasterxml.jackson.databind.JsonMappingException: faile
我正在 Wildfly10 上使用 Spring 4.3.1.RELEASE 运行 Java8 RESTful 服务,没有任何问题。此后,我已将 Java 项目迁移到 AWS 服务器。此服务器托管 T
当我尝试使用以下输入在 java Spring boot 中使用 boolean 字段的无效值发布消息时,出现 HttpMessageNotReadableException: { "User":"
我正在使用 templateRest发帖 User反对 Rest Server但我遇到了以下错误: Exception in thread "main" java.lang.NoClassDefFou
根据设计,Java 记录不能从另一个对象继承(请参阅 Why Java records do not support inheritance? )。所以我想知道实现以下目标的最佳方法是什么。 鉴于我的
我在包含该字段的模型上遇到上述异常。这种异常似乎也是零星的,这进一步引起了人们的关注。我当然可以用 来包装该类 JsonIgnoreProperties(ignoreUnknown = true) 但
我正在尝试使用scala中的jackson fast xml将类对象序列化为json并将json反序列化为类对象。这是我的代码。 var jsonDataString = objectMapper.w
我正在尝试将以下 json 反序列化为 Java 对象,但它提示它无法识别 accesslevel 属性。请参见下文: { "Role1": [ { "
我正在使用 Spring Boot 应用程序,在使用来自 Postman 的 GET 请求点击“/test/api”休息端点时,出现以下错误: com.fasterxml.jackson.databi
我是一名优秀的程序员,十分优秀!