- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
嗨,我有使用 jhipster 4.2.0 的微服务应用程序这是我的资源类
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.net.URI;
import java.net.URISyntaxException;
import java.util.List;
import java.util.Optional;
/**
* REST controller for managing Medida.
*/
@RestController
@RequestMapping("/api")
public class MedidaResource {
private final Logger log = LoggerFactory.getLogger(MedidaResource.class);
private static final String ENTITY_NAME = "medida";
private final MedidaRepository medidaRepository;
private final ClienteRepository clienteRepository;
public MedidaResource(MedidaRepository medidaRepository, ClienteRepository clienteRepository) {
this.medidaRepository = medidaRepository;
this.clienteRepository = clienteRepository;
}
/**
* POST /medidas : Create a new medida.
*
* @param medida the medida to create
* @return the ResponseEntity with status 201 (Created) and with body the new medida, or with status 400 (Bad Request) if the medida has already an ID
* @throws URISyntaxException if the Location URI syntax is incorrect
*/
@PostMapping("/medidas")
@Timed
public ResponseEntity<Medida> createMedida(@Valid @RequestBody Medida medida) throws URISyntaxException {
log.debug("REST request to save Medida : {}", medida);
if (medida.getId() != null) {
return ResponseEntity.badRequest().headers(HeaderUtil.createFailureAlert(ENTITY_NAME, "idexists", "A new medida cannot already have an ID")).body(null);
}
Medida result = medidaRepository.save(medida);
return ResponseEntity.created(new URI("/api/medidas/" + result.getId()))
.headers(HeaderUtil.createEntityCreationAlert(ENTITY_NAME, result.getId().toString()))
.body(result);
}
/**
* PUT /medidas : Updates an existing medida.
*
* @param medida the medida to update
* @return the ResponseEntity with status 200 (OK) and with body the updated medida,
* or with status 400 (Bad Request) if the medida is not valid,
* or with status 500 (Internal Server Error) if the medida couldnt be updated
* @throws URISyntaxException if the Location URI syntax is incorrect
*/
@PutMapping("/medidas")
@Timed
public ResponseEntity<Medida> updateMedida(@Valid @RequestBody Medida medida) throws URISyntaxException {
log.debug("REST request to update Medida : {}", medida);
if (medida.getId() == null) {
return createMedida(medida);
}
Medida result = medidaRepository.save(medida);
return ResponseEntity.ok()
.headers(HeaderUtil.createEntityUpdateAlert(ENTITY_NAME, medida.getId().toString()))
.body(result);
}
/**
* GET /medidas : get all the medidas.
*
* @return the ResponseEntity with status 200 (OK) and the list of medidas in body
*/
@GetMapping("/medidas")
@Timed
public List<Medida> getAllMedidas() {
log.info("------------------ REST request to get all Medidas");
List<Medida> medidas = medidaRepository.findAll();
return medidas;
}
/**
* GET /medidas/medidas : get all the medidas por cliente.
*
* @return the ResponseEntity with status 200 (OK) and the list of medidas in body
*/
@GetMapping("/medidas/cliente/{id}")
@Timed
public List<Medida> getAllMedidasCliente(@PathVariable Long id) {
log.debug("REST request to get all Medidas");
log.info("ID de cliente:" + id);
Cliente cliente = clienteRepository.getOne(id);
log.info("Cliente encontrado: "+ cliente);
List<Medida> medidas = medidaRepository.findAllByCliente(cliente);
return medidas;
}
/**
* GET /medidas/:id : get the "id" medida.
*
* @param id the id of the medida to retrieve
* @return the ResponseEntity with status 200 (OK) and with body the medida, or with status 404 (Not Found)
*/
@GetMapping("/medidas/{id}")
@Timed
public ResponseEntity<Medida> getMedida(@PathVariable Long id) {
log.debug("REST request to get Medida : {}", id);
Medida medida = medidaRepository.findOne(id);
return ResponseUtil.wrapOrNotFound(Optional.ofNullable(medida));
}
/**
* DELETE /medidas/:id : delete the "id" medida.
*
* @param id the id of the medida to delete
* @return the ResponseEntity with status 200 (OK)
*/
@DeleteMapping("/medidas/{id}")
@Timed
public ResponseEntity<Void> deleteMedida(@PathVariable Long id) {
log.debug("REST request to delete Medida : {}", id);
medidaRepository.delete(id);
return ResponseEntity.ok().headers(HeaderUtil.createEntityDeletionAlert(ENTITY_NAME, id.toString())).build();
}
}
这个错误发生在咨询API:http://localhost:9060/anelapi/api/medidas/cliente/1
2017-04-10 15:48:23.425 DEBUG 10068 --- [ XNIO-2 task-4] c.a.clothes.web.rest.MedidaResource : REST request to get all Medidas
2017-04-10 15:48:23.429 INFO 10068 --- [ XNIO-2 task-4] c.a.clothes.web.rest.MedidaResource : ID de cliente:1
2017-04-10 15:48:23.435 ERROR 10068 --- [ XNIO-2 task-4] c.a.clothes.aop.logging.LoggingAspect : Exception in com.anelsoftware.clothes.web.rest.MedidaResource.getAllMedidasCliente() with cause = 'NULL' and exception = 'could not initialize proxy - no Session'
org.hibernate.LazyInitializationException: could not initialize proxy - no Session
at org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:146)
at org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:259)
at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:73)
at com.anelsoftware.clothes.domain.Cliente_$$_jvstc20_0.toString(Cliente_$$_jvstc20_0.java)
at java.lang.String.valueOf(Unknown Source)
at java.lang.StringBuilder.append(Unknown Source)
at com.anelsoftware.clothes.web.rest.MedidaResource.getAllMedidasCliente(MedidaResource.java:106)
如果我尝试http://localhost:9060/anelapi/api/medidas这个工作没问题
希望你的帮助,谢谢
最佳答案
如果您想使用关系调用 2 个存储库,则应通过使用 @Transactional
注释 getAllMedidasCliente()
将它们包含在同一事务中。
更好的是,引入一个客户端服务来处理事务方面的问题,顺便说一句,这是 yo jhipster:entity
提出的选项之一。
此外,您可能只想调用 clienteRepository 并启用 JPA eager fetching 以通过 cliente 获取所有 medidas。
关于java - jhipster LazyInitializationException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43330963/
我开始学习使用 Hibernate 来开发 Java 中的 Web 系统,但我在类的映射和使用方面遇到了一些问题。 我有两个表:tblusuario和tblperfilusuario,tblusuar
我正在开发一个部署在 Tomcat 上的 J2EE 服务器应用程序。我使用 Spring 源作为 MVC 框架,使用 Hibernate 作为 ORM 提供者。我的对象模型有很多惰性关系(根据请求获取
我在尝试访问 permissions 时遇到 LazyInitializationException我的 Collection User目的。异常信息: org.hibernate.LazyIniti
我在我们的生产网络服务器上收到以下错误: NHibernate.LazyInitializationException : Initializing[Domain.Entities.AudienceT
这是一个让我困惑的问题。我正在尝试实现基本的 Hibernate DAO 结构,但遇到了问题。 这是基本代码: int startingCount = sfdao.count(); sfdao.cre
我看到类似的问题已经发布过,但是标准建议的解决方案似乎不适用于我,我想了解原因。 我有一个非常活跃的Grails 2.2.5应用程序,而且我一直在调查涉及大量数据集的报告问题。所讨论的域类是Polic
嗨,我有使用 jhipster 4.2.0 的微服务应用程序这是我的资源类 import org.springframework.web.bind.annotation.*; import javax
我有一个 Patient 类,其中包含 Id 集合和文件夹集合。当我尝试单独保存文件夹时,由于患者的 id 集合,它会抛出 LazyInitializationException。 患者类别如下所示:
我正在使用 Hibernate 3.6.0 制作一个应用程序,但出现了 LazyInitializationException。我没能解决这个问题,所以我来这里寻求你的帮助。 这是堆栈跟踪: Exce
在将域对象从数据库转换为客户端的资源对象期间,我遇到延迟加载字段的问题。 Customer :使用惰性字段从数据库加载实体 FullCustomer :将发送给客户端的实体。 服务层: @Transa
我有一个问题。我在 grails 中有事务性服务: class MyService { static transactional = true Set getFurniture(Long
我有一些具有两种关系的模型: @Entity @Table(name = "data_model") public class DataModel { @Id @GeneratedVa
传统上,我们会尝试避免 LazyInitializationException。但是,我需要暂时允许它们被抛出。这是我想要做的伪代码: Session session = ...; Customer
我正在将 Hibernate 4 用于 Java 项目。 我有下一个包含两个实体的方案: Units *has many* Users 因此,单位拥有用户的外键(请参阅 table definitio
JPA session 在静态方法中的行为如何?我使用 Hibernate 从数据库中检索对象列表,然后使用 Guava 的静态 Lists.transform 方法对其进行转换,这会导致: org.
我有这样的 OmQcActivity 类: @Entity @Cache(usage = CacheConcurrencyStrategy.READ_WRITE) @Table(name="OM_QC
我的代码运行良好,但出现异常。将调用一个操作方法,但是在方法调用完成后我得到了这个异常。 我尝试了网络上所有可用的选项,但似乎没有什么能真正帮到我。 12/14 23:30:17 INFO er.S
目前我有一个子实体有一个 @ManyToOne关联到它的父实体。之前的开发者已经将这个字段设置为 lazy="false"在 session 关闭时也可以随时获取父级,但我决定它应该是 lazy="t
此代码的目的是允许用户检查 ID;在这种情况下,它将是检查特定运动比赛的 ID,以便查看相关比赛及其详细信息。这样做的全部目的是通知用户,如果他们输入了错误的 ID,我只是想在 SOAP 请求中生成一
尝试从数据库获取某些对象时,我不断收到错误: org.hibernate.LazyInitializationException (LazyInitializationException.java:1
我是一名优秀的程序员,十分优秀!