Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

Objetivo

En algunas circunstancias, es necesario poder ofrecer 2 portales totalmente diferentes para los usuarios. No vamos a entrar en detalles de cuales son, pero puede ser necesario.
Por lo tanto nuestor objetivo en este wiki es lograr tener 2 portales cada uno con su L&F independiente.

Restricciones del modelo propuesto

La forma de resolver el problema tiene como limitantes

  • El que ambos portales comparten las mismas licencias, por lo cual los ususarios son el total de usarios del sistema
  • Los portales comparten los cubos

El tema que compartan cubos tiene un workarround que lo veremos más adelante en este mismo wiki.

Configuración

Para lograr el objetivo debemos relalizas los siguiente pasos.

  1. Bajar el jboss
  2. Pararnos en <o3>/jboss/server/default/deploy/gserver/0o3.ear
  3. Copiar la carpeta o3portal.war en el mismo directorio con otro nombre ej:o3portal_2.war
  4. Copiar la carpeta o3cas.war en el mismo directorio con otro nombre ej:o3cas_2.war
  5. editar el archivo <o3>/jboss/server/default/deploy/gserver/0o3.ear/META-INF/application.xml.//
    Buscar
      <module>
        <web>
          <web-uri>o3portal.war</web-uri>
          <context-root>/o3portal</context-root>
        </web>
      </module>
    
    y agegar de modo que quede así
      <module>
        <web>
          <web-uri>o3portal.war</web-uri>
          <context-root>/o3portal</context-root>
        </web>
      </module>
      <module>
        <web>
          <web-uri>o3portal_2.war</web-uri>
          <context-root>/o3portal_2</context-root>
        </web>
      </module>
    
    Buscar
      <module>
        <web>
          <web-uri>o3cas.war</web-uri>
          <context-root>/cas</context-root>
        </web>
      </module>
    
    y agegar para que quede así
      <module>
        <web>
          <web-uri>o3cas.war</web-uri>
          <context-root>/cas</context-root>
        </web>
      </module>
      <module>
        <web>
          <web-uri>o3cas_2.war</web-uri>
          <context-root>/cas2</context-root>
        </web>
      </module>
    
  6. editar el archivo <o3>/jboss/server/default/deploy/gserver/0o3.ear/o3portal_2.war/WEB-INF/web.xml
    Buscar el filtro
    <filter>
    		<filter-name>checkLoginFilter</filter-name>
    		<filter-class>com.ideasoft.cs.ejb.cas.filter.CASFilter</filter-class>
    		<init-param>
    			<param-name>logout_url</param-name>
    			<param-value>/cas/logout</param-value>
    		</init-param>
    		<init-param>
    			<param-name>edu.yale.its.tp.cas.client.filter.loginUrl</param-name>
    			<param-value>${request.prefix}/cas/login</param-value>
    		</init-param>
    		<init-param>
    			<param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>
    			<param-value>${request.prefix}/cas/proxyValidate</param-value>
    		</init-param>
    		<init-param>
    			<param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name>
    			<param-value>${request.serverName}</param-value>
    		</init-param>
    	</filter>
    
    cambiar por
    	<filter>
    		<filter-name>checkLoginFilter</filter-name>
    		<filter-class>com.ideasoft.cs.ejb.cas.filter.CASFilter</filter-class>
    		<init-param>
    			<param-name>logout_url</param-name>
    			<param-value>/cas2/logout</param-value>
    		</init-param>
    		<init-param>
    			<param-name>edu.yale.its.tp.cas.client.filter.loginUrl</param-name>
    			<param-value>${request.prefix}/cas2/login</param-value>
    		</init-param>
    		<init-param>
    			<param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>
    			<param-value>${request.prefix}/cas2/proxyValidate</param-value>
    		</init-param>
    		<init-param>
    			<param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name>
    			<param-value>${request.serverName}</param-value>
    		</init-param>
    	</filter>
    
  7. editar el archivo <o3>/jboss/server/default/deploy/gserver/0o3.ear/o3portal_2.war/o3portal_2.war/logout.jsp

Buscar


   if (isSSO) {
                  response.sendRedirect("/cas/logout?service=" + request.getContextPath());
          } else {
                  response.sendRedirect(request.getContextPath() + "/");
          }

y cambiar por


   if (isSSO) {
                  response.sendRedirect("/cas2/logout?service=" + request.getContextPath());
          } else {
                  response.sendRedirect(request.getContextPath() + "/");
          } 
  1. reiniciar el jboss

Haciendo que los usuarios solo entren y vean en el portal correcto

Para lograr que un usario que solo debería ver los cubos de o3portal y no los de o3portal_2
procedemos a:

  1. Agregar 2 roles, un se llamará portal_1 y el otro portal_2.
  2. Luego le asignamos estos roles a los cubos que correspondan a cada portal.
  3. Asignamos los roles creados a cada uno de los usuario que deban entrar a cada portal.
  • No labels