2 回答

TA貢獻1802條經驗 獲得超5個贊
看來您正在使用 MySQL。
我遇到了同樣的錯誤,并通過如下設置 JdbcMutableAclService 解決了它:
// Based on https://github.com/eugenp/tutorials/blob/master/spring-security-acl/src/main/java/org/baeldung/acl/config/ACLContext.java
@Bean
public JdbcMutableAclService aclService() {
JdbcMutableAclService jdbcMutableAclService = new JdbcMutableAclService(dataSource, lookupStrategy(), aclCache());
// TODO: for MySQL ONLY
jdbcMutableAclService.setClassIdentityQuery("SELECT @@IDENTITY");
jdbcMutableAclService.setSidIdentityQuery("SELECT @@IDENTITY");
return jdbcMutableAclService;
}
希望這有幫助。

TA貢獻1806條經驗 獲得超8個贊
使用 PostgreSQL 時的解決方案JdbcMutableAclService:
@Bean
public MutableAclService aclService() {
JdbcMutableAclService aclService = new JdbcMutableAclService(dataSource, lookupStrategy(), aclCache());
aclService.setSidIdentityQuery("SELECT currval('acl_sid_id_seq')");
aclService.setClassIdentityQuery("SELECT currval('acl_class_id_seq')");
return aclService;
}
添加回答
舉報