问题描述
我们的应用程序是spring boot + primefaces + spring security,我们计划将默认会话管理移至与jdbc进行集群ENV的spring会话。
x.c
一个与jdbc的Spring会话,除了可序列化的对象之外,这就是为什么实现了类和一些不需要序列化的对象的Serializable接口的原因,我使用了瞬态关键字。请让我知道为什么该类org.springframework.dao.support.PersistenceExceptionTranslationInterceptor除外序列化
@ManagedBean
@SessionScoped
public class TabbedViewBean implements Serializable{
@ManagedProperty("#{loginService}")
private LoginService loginService;
@ManagedProperty("#{loggedUser}")
private LoggedUser loggedUser;
@ManagedProperty("#{loadLoggedUserObjectService}")
private LoadLoggedUserObjectService loadLoggedUserObjectService;
@ManagedProperty("#{commonInfoService}")
private CommonInfoService commonInfoService;
@ManagedProperty("#{commonService}")
private transient CommonService commonService;
@ManagedProperty("#{commonDao}")
private CommonDao commonDao;
@ManagedProperty("#{userStorePrivilegeServiceImpl}")
private UserStorePrivilegeServiceImpl userStorePrivilegeServiceImpl;
@postconstruct
public void init() {
if (true) {
UserPrivilegeInfo userPrivilegeInfo = null;
String username = SecurityContextHolder.getContext().getAuthentication().getName();
System.out.println("loginService" + loginService);
User user = loginService.getUser(username,true);
Set<UserPrivilegeInfo> privileges = user.getUserPrivilegeInfos();
for (UserPrivilegeInfo privilege : privileges) {
if (privilege.isPrimaryPrivilege() && privilege.isLastLogin()) {
userPrivilegeInfo = privilege;
}
}
System.out.println("jhdjg" + userPrivilegeInfo.getEmployee().getEmpId());
allroles = loginService.getUserRoles(userPrivilegeInfo.getEmployee().getEmpId());
System.out.println("fdfdf" + allroles.size());
List<UserStorePrivilegeInfo> uspis = userStorePrivilegeServiceImpl
.getUserStoreByEmp(userPrivilegeInfo.getEmployee().getEmpId(),null,false);
System.out.println("dfsdf:: " + uspis.size());
List<String> roles = new ArrayList<>();
loggedUser.setRoles(allroles);
loadLoggedUserObjectService.updateLoggedUserData(user,roles,loggedUser,userPrivilegeInfo,privileges,uspis);
}
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)