- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
似乎一遍又一遍地问这个问题,我仍然找不到解决我问题的答案。我在下面有一个域模型。每个新创建或更新的“安全用户”都需要我确保其具有配置文件,如果没有,则创建一个新的配置文件并分配给它。
配置文件的要求相同-在保存期间每次检查它是否具有工作空间,如果没有,则创建一个工作空间。这样做是为了确保所有“高级用户”都有至少一个工作区。除了所有者本人之外,工作空间可能具有不同的贡献者。
当我尝试保存“秒用户”时,总是会得到:
object references an unsaved transient instance save the transient instance before flushing
class SecUser implements Serializable {
String email
static hasOne = [profile: Profile]
def beforeValidate() {
if (profile == null) {
profile = new Profile(secUser: this)
}
profile.validate()
}
}
class Profile {
static belongsTo = [secUser: SecUser]
static hasMany = [workspaces: Workspace]
static constraints = {
workspaces minSize: 1
}
def beforeValidate() {
if (workspaces == null || workspaces.isEmpty()) {
def workspace = new Workspace(owner: this).save()
workspaces = [workspace]
}
}
}
class Workspace {
String title = "Workspace ${10000 + new Random().nextInt(89999)}"
static hasOne = [owner: Profile]
static belongsTo = Profile
static hasMany = [contributors: Profile]
}
workspaces = [workspace]
this.addToWorkspaces(workspace)
ERROR spi.SqlExceptionHelper - Referential integrity constraint violation: "FK_MYFCABJIQ83AG2CLBDF61MPA5: PUBLIC.PROFILE_WORKSPACES FOREIGN KEY(WORKSPACE_ID) REFERENCES PUBLIC.WORKSPACE(ID) (0)"; SQL statement: insert into profile_workspaces (profile_id, owner_id) values (?, ?) [23506-176].
1 Câu trả lời
当我处理涉及多个域对象的业务交易时,我创建了Grails服务。使用服务将简化域单元测试,并且还有助于描述您的代码试图完成的工作。可以将其视为事务脚本设计模式(四人制)。
您的服务可以具有create()和update()方法,然后可以从 Controller 中调用这些方法。然后,您的服务将根据需要连接SecUser,Profile和Workspace。
关于hibernate - 交叉依赖问题:对象引用未保存的 transient 实例,在刷新之前保存 transient 实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31980056/
我知道这个问题已经被问过很多次了,但我找不到适合我的答案。 我在 Spring Roo 应用程序中有两个实体,它们处于多对多关系、发布和组件中。 首先,我通过以下方式获取现有版本的实例 selecte
我正在尝试将用户详细信息存储到下表中:user、role、user_role。尝试保存详细信息时,它会引发以下错误。 Error during managed flush [org.hibernate
我有两个 hibernate 实体 Coupon 和 CouponHistory,在 CouponHistory 和 Coupon 之间具有单向关系。 @Entity @Table(name = "v
我在外键 dimension_id 之一的表中有表 product。所以在服务层编写我的测试用例时它显示了错误。 这是我的测试用例 @Transactional(propagation = Propa
在 ARM 架构手册中提到缓存可以是 transient 的和非 transient 的,并且它是由实现定义的。我无法理解关于缓存的 transient 内存的概念和使用。我正在尝试编写启用 MMU
我有 2 个域模型和一个 Spring REST Controller ,如下所示: @Entity public class Customer{ @Id private Long id; @OneT
Tôi biết câu hỏi này đã có nhiều câu hỏi trên Stackoverflow, nhưng ngay cả với nhiều câu trả lời, những câu trả lời đó cũng không giúp ích cho tôi nhiều và tôi không tìm ra câu trả lời. Trong WebAPP của tôi, nó hoạt động tốt, nhưng khi tôi chuyển đổi nó thành API thì nó không hoạt động (nhãn chủ đề
我有以下域名 class User { Boolean accountLocked String password Boolean passwordExpired Bo
我写了一个 elisp 宏,在 transient-mark-mode 中保留区域: (defmacro keep-region (command) "Wrap command in code t
这是我的员工类(class): @Entity public class Employee { @Id @GeneratedValue private int id; private String f
我正在通读 Windows Phone 7.5 Unleashed,有很多代码看起来像这样(在页面的代码隐藏中): bool loaded; protected override void OnNav
Tôi có một lớp thực thể nhân viên tự liên kết với các cột id, name và ref liên quan đến chính nó. Tôi muốn tạo một phiên bản mới của nó và lưu nó vào cơ sở dữ liệu. Đầu tiên tôi tạo một thể hiện của lớp Employee và đặt tên là manager. Sau đó
Tôi có một biểu mẫu để thêm căn hộ mới, trong biểu mẫu đó tôi có một menu thả xuống nơi người dùng có thể chọn người chịu trách nhiệm. Có vẻ như khi bạn chọn từ danh sách thả xuống và cố gắng lưu căn hộ, ứng dụng của tôi nghĩ rằng người đó đã bị thay đổi. Nó cho tôi lỗi sau đây chỉ ra rằng tôi nên lưu trước
我正在尝试保存一个复杂的对象,该对象内部有许多引用元素,而且它在大多数情况下都能完美运行。 但是在某些情况下,我们会遇到以下异常, object references an unsaved trans
Tôi đã tìm thấy một số câu trả lời khả thi cho câu hỏi của mình, nhưng câu trả lời ở đây là về việc nâng cấp từ Hibernate 3.4.0GA lên Hibernate 4.1.8. Vì vậy, điều này từng hoạt động trong các phiên bản trước, tôi đã tìm kiếm xung quanh để biết lý do tại sao nó bị hỏng trong phiên bản mới này
Có vẻ như câu hỏi này được hỏi đi hỏi lại nhiều lần và tôi vẫn không thể tìm ra câu trả lời giải quyết được vấn đề của mình. Tôi có mô hình miền như bên dưới. Mỗi "Người dùng bảo mật" mới được tạo hoặc cập nhật đều yêu cầu tôi phải đảm bảo rằng người dùng đó có hồ sơ, nếu chưa có, tôi sẽ tạo một hồ sơ mới và chỉ định cho người dùng đó. Yêu cầu về tập tin cấu hình
Tôi đang gặp khó khăn trong việc tìm ra lý do tại sao JPA không phân tầng mối quan hệ @ManyToMany của tôi. Tất cả các câu trả lời tôi tìm thấy đều liên quan đến các câu lệnh cascade bị thiếu. Nhưng tôi có chúng và vẫn nhận được: Do: org.hibernate.Transi
例如,当我使用 transient 通过更改 translate(x, y) 的值来实现 2s 持续时间的动画时。如何获取0.5s时刻translate(x, y)的当前值? 最佳答案 我认为你做不到
我在尝试保存属于多对多关联的对象时收到 TransientObjectException。我有点理解为什么会这样,但想了解如何正确完成我正在尝试做的事情。 简而言之,我正在尝试做的事情: 我的应用程序
transient final int 和 transient final Integer 有什么不同。 使用 int: transient final int a = 10; 序列化前: a = 1
Tôi là một lập trình viên xuất sắc, rất giỏi!