Pages enfant
  • Tomcat en production

Vous regardez une version antérieure (v. /wiki/display/ESUPMU/Tomcat+en+production) de cette page.

afficher les différences afficher l'historique de la page

« Afficher la version précédente Vous regardez la version actuelle de cette page. (v. 16) afficher la version suivante »

  • Télécharger et decompresser le dernier tomcat 6
    • /esup/tomcat6
  • Renseigner dans votre build.properties (ou custom.properties)
     server.home=/esup/tomcat6
    
  • Modifier le /esup/tomcat6/conf/catalina.properties
     shared.loader=${catalina.base}/shared/classes,${catalina.base}/shared/lib/*.jar
    
  • Créer les dossiers shared/classes et shared/lib
    • /esup/tocmat6/shared/classes
    • /esup/tocmat6/shared/lib
  • ajouter les contexts dans le portail (Attention au 2 docBase, username, password, url a adapter)
<?xml version='1.0' encoding='utf-8'?><Server port="8005" shutdown="SHUTDOWN">
  <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
  <Listener className="org.apache.catalina.core.JasperListener" />
  <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />

  <Service name="Catalina">
    <!-- Define an AJP 1.3 Connector on port 8009 -->
    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
    <Engine name="Catalina" defaultHost="localhost">
      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">

	  <Context path=""
	 	   docBase="/esup/webapps/uPortal"
		   crossContext="true"
		   reloadable="true">
		<Resource name="jdbc/PortalDb"
			  auth="Container"
			  type="javax.sql.DataSource"
			  username="XXXXX" password="XXXXX"
			  driverClassName="com.mysql.jdbc.Driver"
			  url="jdbc:mysql://XXXX.univ.fr/XXXXX?autoReconnect=true"
			  maxActive="50" maxIdle="30" maxWait="10000"
			  poolPreparedStatements="true"
			  removeAbandoned="true"
			  removeAbandonedTimeout="300"
		/>
		<Manager pathname="" />
	  </Context>

	  <Context path="/ResourceServingWebapp"
	           docBase="/esup/webapps/ResourceServingWebapp"
		    reloadable="false">
		<Manager pathname=""/>
	  </Context>

          <Context path="/manager"
                   docBase="E:/esup/apache-tomcat-6.0.20/webapps/manager"
                   reloadable="false"
		   antiResourceLocking="false"
		   privileged="true">
		<Manager pathname=""/>
	  </Context>
      </Host>
    </Engine>
  </Service>
</Server>
  • placer le driver de base de données dans /esup/tocmat6/lib
    • Utiliser par le pool de connexion Tomcat
    • vous en trouverez certaine version de driver dans le package update/Tomcat\lib
  • Ajouter les jar nécessaires au portail dans tomcat
    • passer tomcat.update=true
    • ant init deploy-ear
    • repasser le tomcat.update=true
  • Supprimer les dossier suivants :
    • /esup/tomcat6/webapps/docs
    • /esup/tomcat6/webapps/examples
    • /esup/tomcat6/webapps/host-manager
    • /esup/tomcat6/webapps/ROOT
  • Cassifier le manager Tomcat
    • créer un dossier /esup/tomcat6/webapps/manager/WEB-INF/lib
    • télécharger le cas-client http://www.ja-sig.org/downloads/cas-clients/
    • en extraire cas-client-core-3.X.X.jar, commons-logging-X.X.jar le placer dans /esup/tomcat6/webapps/manager/WEB-INF/lib
    • Vous devrez aussi vous procurer le xercesImpl.jar http://www.apache.org/dist/xerces/j/binaries/ et le mettre dans /esup/tomcat6/webapps/manager/WEB-INF/lib
    • Modifier le web.xml
      • Ajouter les filtre CAS (Attention au serverName, casServerLoginUrl, casServerUrlPrefix
        <!-- Server Name -->
        <context-param>
                <param-name>serverName</param-name>
                <param-value>XXXXXXXXX</param-value>
        </context-param>



	<filter>
   		<filter-name>CAS Single Sign Out Filter</filter-name>
   		<filter-class>org.jasig.cas.client.session.SingleSignOutFilter</filter-class>
	</filter>

	<!-- CAS Authentication Filter -->
        <filter>
                <filter-name>CASFilter</filter-name>
                <filter-class>
                        org.jasig.cas.client.authentication.AuthenticationFilter
                </filter-class>
                <init-param>
                        <param-name>casServerLoginUrl</param-name>
                        <param-value>https://XXXXX/cas/login</param-value>
                </init-param>
        </filter>

        <!-- CAS Validation Filter -->
        <filter>
                <filter-name>CASValidation</filter-name>
                <filter-class>
                        org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter
                </filter-class>
                <init-param>
                        <param-name>casServerUrlPrefix</param-name>
                        <param-value>https://XXXXX/cas</param-value>
                </init-param>
                <init-param>
                        <param-name>redirectAfterValidation</param-name>
                        <param-value>true</param-value>
                </init-param>
        </filter>

	 <!-- CAS Wrapper Filter -->
        <filter>
                <filter-name>CASWrapper</filter-name>
                <filter-class>
                        org.jasig.cas.client.util.HttpServletRequestWrapperFilter
                </filter-class>
        </filter>
      • ajouter le mapping
<filter-mapping>
   		<filter-name>CAS Single Sign Out Filter</filter-name>
   		<url-pattern>/*</url-pattern>
	</filter-mapping>

	<!-- CAS Authentication Filter Mapping -->
        <filter-mapping>
                <filter-name>CASFilter</filter-name>
                <url-pattern>/*</url-pattern>
        </filter-mapping>

        <!-- CAS Validation Filter Mapping -->
        <filter-mapping>
                <filter-name>CASValidation</filter-name>
                <url-pattern>/*</url-pattern>
        </filter-mapping>

        <!-- CAS Wrapper Filter Mapping -->
        <filter-mapping>
                <filter-name>CASWrapper</filter-name>
                <url-pattern>/*</url-pattern>
        </filter-mapping>
      • Ajouter le Listener
<listener>
		<listener-class>org.jasig.cas.client.session.SingleSignOutHttpSessionListener</listener-class>
	</listener>
      • supprimer la partie <resource-env-ref>...</resource-env-ref>
      • supprimer la partie <security-constraint>...</security-constraint>
      • supprimer la partie <login-config>...</login-config>
      • supprimer la partie <security-role>...</security-role>
  • Aucune étiquette