- Authorization authorization = subject
- .getPrivateCredentials(Authorization.class).iterator().next();
- if (request != null) {
- request.setAttribute(HttpContext.REMOTE_USER,
- authorization.getName());
- request.setAttribute(HttpContext.AUTHORIZATION, authorization);
- request.getSession().setAttribute(HttpContext.AUTHORIZATION,
- authorization);
- subject.getPrivateCredentials().add(request.getSession());
- }
+ // Authorization authorization =
+ // subject.getPrivateCredentials(Authorization.class).iterator().next();
+ // if (request != null && authorization.getName() != null) {
+ // request.setAttribute(HttpContext.REMOTE_USER,
+ // authorization.getName());
+ // request.setAttribute(HttpContext.AUTHORIZATION, authorization);
+ //
+ // HttpSession httpSession = request.getSession();
+ // if (httpSession.getAttribute(HttpContext.AUTHORIZATION) == null) {
+ //
+ // String sessionId = request.getSession().getId();
+ // Collection<ServiceReference<CmsSession>> sr;
+ // try {
+ // sr = bc.getServiceReferences(CmsSession.class,
+ // "(" + CmsSession.CMS_SESSION_ID + "=" + sessionId + ")");
+ // } catch (InvalidSyntaxException e) {
+ // throw new CmsException("Cannot get CMS session for id " + sessionId,
+ // e);
+ // }
+ // CmsSession cmsSession;
+ // if (sr.size() == 1) {
+ // cmsSession = bc.getService(sr.iterator().next());
+ // } else if (sr.size() == 0) {
+ // Hashtable<String, String> props = new Hashtable<>();
+ // props.put(CmsSession.CMS_DN, authorization.getName());
+ // props.put(CmsSession.CMS_SESSION_ID, sessionId);
+ // cmsSession = new CmsSessionImpl(sessionId, authorization);
+ // bc.registerService(CmsSession.class, cmsSession, props);
+ // if (log.isDebugEnabled())
+ // log.debug("Initialized " + cmsSession + " for " +
+ // authorization.getName());
+ // } else
+ // throw new CmsException(sr.size() + " CMS sessions registered for " +
+ // sessionId);
+ // cmsSession.addHttpSession(request);
+ // if (log.isTraceEnabled())
+ // log.trace("Added " + request.getServletPath() + " to " + cmsSession +
+ // " (" + request.getRequestURI()
+ // + ")");
+ // httpSession.setAttribute(HttpContext.AUTHORIZATION, authorization);
+ // }
+ // subject.getPrivateCredentials().add(request.getSession());
+ // }