2014-09-29 4 views
0

사용자 지정된 JBoss Portal에 대해 도메인 모드에서 SSO 복제를 설정하려고합니다. 나는 domain.xml에 다음과 같이 변경했다 :도메인 모드를 사용하는 클러스터의 JBoss Portal SSO 복제

  • 는 HA-프로필에 속하는 내 서버 그룹을, 나는 추가 :

    <system-properties> <property name="exo.profiles" value="cluster"/> 
    <property name="gatein.jcr.config.type" value="cluster"/> 
    <property name="gatein.jcr.index.changefilterclass" value="org.exoplatform.services.jcr.impl.core.query.jbosscache.LocalIndexChangesFilter"/> 
    
  • 을 하 프로파일에 domain.xml의

    에 나는 사용자로부터 정보를 얻으려고 할 때 주체를 복제
    <subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host" native="false"> 
    <connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/> 
    <virtual-server name="default-host" enable-welcome-root="true"> 
    <alias name="localhost"/> 
    <alias name="example.com"/> 
    <sso cache-container="web" cache-name="sso"/> 
    </virtual-server> 
    </subsystem> 
    

나는 데 문제가, 내가 NPE를 얻을. 이 로그 조각입니다.

########### log in @ server1 ########### 11:27:41,430 TRACE [org.jboss.as.web.sso] (ajp-/x.x.x.1:8009-4) Registering sso id 'qY0hc42eF1DFFXqtDHzJLse9' for user '[email protected]' with auth type 'FORM' 

11:27:41,432 TRACE [org.jboss.as.clustering.web.sso.infinispan.SSOClusterManager] (ajp-/x.x.x.1:8009-4) Registering SSO qY0hc42eF1DFFXqtDHzJLse9 in clustered cache 

########### shutdown @ server1 ########### 11:28:14,794 INFO [org.apache.coyote.http11] (MSC service thread 1-4) JBWEB003075: Coyote HTTP/1.1 pausing on: http-/x.x.x.1:8080 

########### sso update @ server2 ########### 

11:27:41,447 TRACE [org.jboss.as.clustering.web.sso.infinispan.SSOClusterManager] (OOB-18,shared=udp) received a credentials modified message for SSO qY0hc42eF1DFFXqtDHzJLse9 

11:27:41,462 TRACE [org.jboss.as.clustering.web.sso.infinispan.SSOClusterManager] (OOB-18,shared=udp) received a session modified message for SSO qY0hc42eF1DFFXqtDHzJLse9 

11:28:15,577 TRACE [org.jboss.as.clustering.web.sso.infinispan.SSOClusterManager] (OOB-20,shared=udp) received a session modified message for SSO qY0hc42eF1DFFXqtDHzJLse9 

########### log in @ server2 ########### 11:28:15,578 TRACE [org.jboss.as.web.sso] (OOB-20,shared=udp) Notified that SSO qY0hc42eF1DFFXqtDHzJLse9 is empty 

11:28:35,530 TRACE [org.jboss.as.web.sso] (ajp-/x.x.x.2:8009-4) Checking for cached principal for qY0hc42eF1DFFXqtDHzJLse9 

11:28:35,532 TRACE [org.jboss.as.web.sso] (ajp-/x.x.x.2:8009-4) Found cached principal 'NULL' with auth type 'FORM' 

장애 조치 후 페이지를 새로 고침 오류가 발생합니다

<% if(request.getUserPrincipal() == null) {%> 
          <a href="/portal/login" id="sign-in" class="header-link" rel="nofollow">Login</a> 
          <% } else { %> 
          <ul class="header-link"> 
            <li class="hidden-xs"><i class="icons user"></i><%= request.getUserPrincipal().getName().toString() %></li> 

어떤 힌트는 크게 다음과 같습니다이 조각의 "다른"부분에서 생성됩니다

11:28:44,054 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[customapp].[jsp]] (ajp-/x.x.x.2:8009-4) JBWEB000236: Servlet.service() for servlet jsp threw exception: java.lang.NullPointerException at org.apache.jsp.WEB_002dINF.jsp.banners.customappbanner_jsp._jspService(customappbanner_jsp.java:148) 

고맙습니다. 또한 distributable 태그가 web.xml에 있습니다.

감사합니다.

답변

0

참고로, 이것은 세션 복제에 대한 SAML/SSO 밸브 문제입니다. 현재 Portal/EAP에서는 지원되지 않습니다.