【发布时间】:2015-08-21 14:12:46
【问题描述】:
我需要在一个安静的 web 服务中获取 JPA EntityListener 中的当前用户。这是我的代码:
服务网站:
@POST
@Produces({"application/json"})
@Consumes({"application/json"})
public Response create(@HeaderParam("Authorization") String tokenAuth,
AreaTran areaT) {
Response res;
User user = null;
try {
user = testUser(tokenAuth);
Area area = areaCont.create(user, areaT);
res = AppConf.genOk("Area " + area.getNombre() + " creada correctamente");
} catch (Exception e) {
res = le.gen(e, user);
}
return res;
}
在这里我得到登录用户user = testUser(tokenAuth);
我的问题在这里:
public class AuditEntityListener {
@PrePersist
public void prePersist(AuditableEntity e) {
e.setCreatedDate(new Date());
//how get the current user for this transaction HERE!!!!!
}
@PreUpdate
public void preUpdate(AuditableEntity e) {
e.setLastModifiedDate(new Date());
}
}
有什么方法可以获取请求流的用户?
【问题讨论】:
标签: java rest jpa eclipselink entitylisteners