private boolean haveAccess(HttpServletRequest request, ActionMapping mapping)
throws SystemException {
HttpSession session = request.getSession();
if (session.getAttribute(IConst.SESSION.PERMISSION_GUARD_KEY) == null) { throw new SystemException(
"PERMISSION_GUARD not found in session"); }
IPermissionGuard guard = (IPermissionGuard) session
.getAttribute(IConst.SESSION.PERMISSION_GUARD_KEY);
HashMap permissionMapping = StrutsConfigurationHelperAction
.retrieveStrutsActionMapping(request.getSession()
.getServletContext());
StrutsPermissionMapping spm = (StrutsPermissionMapping) permissionMapping
.get(mapping.getPath());
if (spm != null) {
PermissionPoint point = new PermissionPoint(spm.getAmObjectId()
.intValue(), spm.getAmOperationId().intValue());
return guard.checkPermission(point);
}
return true;
}