[Castore-commits] InitCastore.java NONE 1.1

mathieu grimault grimault-m at adullact1.hosting.cri74.org
Mer 21 Juin 16:20:54 CEST 2006


Update of /cvsroot/castore/castore-struts/src/java/fr/emn/castor/struts/plugIn
In directory adullact1:/tmp/cvs-serv12381/src/java/fr/emn/castor/struts/plugIn

Added Files:
	InitCastore.java 
Log Message:
Cassification de Castore : 
Introduction d'un Prelogin avant l'action Login.
Ajout d'un PlugIn pour initialiser le SSL.

--- NEW FILE: InitCastore.java ---
/*
 * $Id$
 *
 * Plateforme CASTORE
 * CeCILL Copyright (C) 2005-2006 by EMN
 * Made by 
 * Web site = http://www.emn.fr/castore
 * Contact = Cédric Dumas, e-mail = Cedric.Dumas at emn.fr
 *
 * Version
 *
 * Ce logiciel est un programme informatique servant à créer une plateforme
 * open-source de bibliothèque numérique XML pour Conserver, Valoriser et
 * Diffuser le patrimoine documentaire de votre institut.
 *
 * Ce logiciel est régi par la licence CeCILL soumise au droit français et
 * respectant les principes de diffusion des logiciels libres. Vous pouvez
 * utiliser, modifier et/ou redistribuer ce programme sous les conditions de la
 * licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA sur le site
 * "http://www.cecill.info". En contrepartie de l'accessibilité au code source
 * et des droits de copie, de modification et de redistribution accordés par
 * cette licence, il n'est offert aux utilisateurs qu'une garantie limitée. Pour
 * les mêmes raisons, seule une responsabilité restreinte pèse sur l'auteur du
 * programme, le titulaire des droits patrimoniaux et les concédants successifs.
 * A cet égard l'attention de l'utilisateur est attirée sur les risques associés
 * au chargement, à l'utilisation, à la modification et/ou au développement et à
 * la reproduction du logiciel par l'utilisateur étant donné sa spécificité de
 * logiciel libre, qui peut le rendre complexe à manipuler et qui le réserve
 * donc à des développeurs et des professionnels avertis possédant des
 * connaissances informatiques approfondies. Les utilisateurs sont donc invités
 * à charger et tester l'adéquation du logiciel à leurs besoins dans des
 * conditions permettant d'assurer la sécurité de leurs systèmes et ou de leurs
 * données et, plus généralement, à l'utiliser et l'exploiter dans les mêmes
 * conditions de sécurité. Le fait que vous puissiez accéder à cet en-tête
 * signifie que vous avez pris connaissance de la licence CeCILL, et que vous en
 * avez accepté les termes.
 *
 */

package fr.emn.castor.struts.plugIn;

import javax.servlet.ServletException;

import org.apache.struts.action.ActionServlet;
import org.apache.struts.action.PlugIn;
import org.apache.struts.config.ModuleConfig;

import fr.emn.castor.common.PropertiesHelper;

/**
 * Cette classe est exécutée au chargement de la servlet Struts de Castore.
 * Y sont implémentées les initialisations uniques de certains composants, 
 * par exemple : le keystore et truststore de la JVM.  
 *
 * @author $Author$
 * @version $Revision$
 *
 */
public class InitCastore implements PlugIn {

	/**
	 * @see org.apache.struts.action.PlugIn#init(org.apache.struts.action.ActionServlet, org.apache.struts.config.ModuleConfig)
	 */
	public void init (ActionServlet servlet, ModuleConfig moduleConfig) throws ServletException {
    	// initialisation du SSL...
		chargerSsl();
	}
	
	/**
	 * @see org.apache.struts.action.PlugIn#destroy()
	 */
	public void destroy() {
		
	}
	
	/**
	 * Chargements des paramètres pour les certificats pour SSL.
	 */
	private void chargerSsl() {
		if (PropertiesHelper.getProperty("ssl.keystore.file") != null && 
				PropertiesHelper.getProperty("ssl.keystore.file").length() > 0) {
	    	// Paramétrage du keystore pour SSL...
			System.setProperty(
				"javax.net.ssl.keyStore", 
				PropertiesHelper.getProperty("ssl.keystore.file")
			);
			System.setProperty(
				"javax.net.ssl.keyStorePassword", 
				PropertiesHelper.getProperty("ssl.keystore.password")
			);
		}
		if (PropertiesHelper.getProperty("ssl.truststore.file") != null 
				&& PropertiesHelper.getProperty("ssl.truststore.file").length() > 0) {
			// Paramétrage du truststore pour SSL...
			System.setProperty(
				"javax.net.ssl.trustStore", 
				PropertiesHelper.getProperty("ssl.truststore.file")
			);
			System.setProperty(
				"javax.net.ssl.trustStorePassword", 
				PropertiesHelper.getProperty("ssl.truststore.password")
			);
		}
	}
}




Plus d'informations sur la liste de diffusion Castore-commits