###############################################################################
# Copyright (c) 2001, 2004 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
# 
# Contributors:
# IBM Corporation - initial API and implementation
###############################################################################
subclass_responsibilty_EXC_=IWAE0001E {0} doit \u00eatre impl\u00e9ment\u00e9 dans la sous-classe
key_class_reflection_ERROR_=IWAE0002E Impossible de refl\u00e9ter la classe "{0}" pour comparer la zone de cl\u00e9 primaire "{1}" du bean entity "{2}"
key_field_reflection_ERROR_=IWAE0003E Impossible de refl\u00e9ter le type de la zone de cl\u00e9 primaire "{0}" du bean entity "{1}"
removing_key_field_INFO_=IWAE0004I Suppression de la zone de cl\u00e9 primaire non valide "{0}" du bean entity "{1}"
repair_usage_ERROR_=IWAE0005E Syntaxe de RepairArchiveCommand : impossible d''\u00e9crire dans le chemin de destination : {0}
invalid_archive_EXC_=IWAE0006E L''archive n''est pas un {0} valide car le descripteur de d\u00e9ploiement est introuvable (respect maj/min) : {1}
load_resource_EXC_=IWAE0007E Impossible de charger la ressource "{0}" dans l''archive "{1}"
nested_jar_EXC_=IWAE0008E Une erreur s''est produite lors de la lecture de {0} \u00e0 partir de {1}
make_temp_dir_EXC_=IWAE0009E Impossible de cr\u00e9er le r\u00e9pertoire temporaire : {0}
invalid_classpath_WARN_=IWAE0010W L''\u00e9l\u00e9ment "{0}" du chemin d''acc\u00e8s n''est pas un r\u00e9pertoire ou un fichier zip
invalid_cp_file_WARN_=IWAE0011W L''\u00e9l\u00e9ment "{0}" du chemin d''acc\u00e8s ne d\u00e9signe pas un fichier local
io_ex_loading_EXC_=IWAE0012E Une exception E-S s''est produite lors du chargement de {0}
tx_bean_mgd_WARN_=IWAE0013W Importation d''EJB 1.0 : pas de mappage du descripteur de contr\u00f4le TX_BEAN_MANAGED pour {0}
error_saving_EXC_=IWAE0014E Erreur de sauvegarde de {0}
io_ex_manifest_EXC_=IWAE0015E Une exception d''E-S s''est produite lors de la lecture du manifeste dans l''archive {0}
io_ex_reopen_EXC_=IWAE0016E Une exception d''E-S s''est produite lors de la r\u00e9ouverture de {0}
unable_replace_EXC_=IWAE0017E Impossible de remplacer l''archive d''origine {0}
duplicate_file_EXC_=IWAE0018E L''archive nomm\u00e9e {0} contient d\u00e9j\u00e0 un fichier nomm\u00e9 {1}
duplicate_entry_EXC_=IWAE0019E Un fichier ou une ressource avec l''uri {0} existe d\u00e9j\u00e0 dans l''archive nomm\u00e9e {1}
file_exist_as_dir_EXC_=IWAE0020E Un fichier nomm\u00e9 {0} existe et est un r\u00e9pertoire
uncontained_module_EXC_=IWAE0021E Le module {0} ne se trouve pas dans un fichier EAR
dd_in_ear_load_EXC_=IWAE0022E Une exception s''est produite lors du chargement du descripteur de d\u00e9ploiement du module "{0}" dans le fichier EAR "{1}"
nested_open_fail_EXC_=IWAE0023E Impossible d''ouvrir le fichier de module "{0}" dans le fichier EAR "{1}"
duplicate_module_EXC_=IWAE0024E Le descripteur de d\u00e9ploiement du fichier EAR "{0}" contient d\u00e9j\u00e0 un module dont l''uri est "{1}"
no_sec_role_EXC_=IWAE0025E {0} : le descripteur de d\u00e9ploiement du fichier EAR ne contient pas de r\u00f4le de s\u00e9curit\u00e9 nomm\u00e9 {1}
dup_sec_role_EXC_=IWAE0026E {0} : le descripteur de d\u00e9ploiement du fichier EAR contient d\u00e9j\u00e0 un r\u00f4le de s\u00e9curit\u00e9 nomm\u00e9 {1}
dup_sec_role_module_EXC_=IWAE0027E Le descripteur de d\u00e9ploiement de {0} contient d\u00e9j\u00e0 un r\u00f4le de s\u00e9curit\u00e9 nomm\u00e9 {1}
dup_resource_EXC_=IWAE0028E La ressource nomm\u00e9e "{0}" existe d\u00e9j\u00e0 dans l''archive "{1}"
error_saving_EXC_=IWAE0030E Erreur de sauvegarde de {0}
add_copy_class_dir_EXC_=IWAE0031E La m\u00e9thode addCopyClass n''est pas prise en charge pour les r\u00e9pertoires. URI : {0}
add_copy_lib_dir_EXC_=IWAE0032E La m\u00e9thode addCopyLib n''est pas prise en charge pour les r\u00e9pertoires. URI : {0}
list_components_war_EXC_=IWAE0033E Une exception s''est produite lors du listage des composants dans le fichier WAR : {0}
open_nested_EXC_=IWAE0034E Impossible d''ouvrir l''archive imbriqu\u00e9e "{0}" dans "{1}"
make_temp_file_WARN_=IWAE0035W Avertissement : impossible de cr\u00e9er un fichier temporaire pour {0}.  Cela aura un impact sur les performances.
file_not_found_EXC_=IWAE0036E Nom de l''URI : {0} ; nom du fichier : {1}
could_not_open_EXC_=IWAE0037E Impossible d''ouvrir {0}
could_not_find_dir_EXC_=IWAE0038E Impossible d''ouvrir le r\u00e9pertoire {0}
not_a_dir_EXC_=IWAE0039E Impossible d''ouvrir le r\u00e9pertoire car le fichier {0} n''est pas un r\u00e9pertoire
inferred_dds_EXC_=IWAE0040E Le fichier JAR d''EJB "{0}" est consid\u00e9r\u00e9 de version 1.0 car le manifeste ne d\u00e9clare pas les beans enterprise, mais il existe des descripteurs de d\u00e9ploiement dans ce fichier.
filename_exception_EXC_=IWAE0041E Nom du fichier : {0} ; exception : {1}
no_dds_10_EXC_=IWAE0042E Aucun descripteur de d\u00e9ploiement dans le fichier JAR d''EJB 1.0 : {0}
manifest_dd_load_EXC_=IWAE0043E Le manifeste JAR d\u00e9clare un bean enterprise pour lequel un fichier de descripteur de d\u00e9ploiement ne peut pas \u00eatre charg\u00e9 : {0}
manifest_dd_find_EXC_=IWAE0044E Le manifeste JAR d\u00e9clare un bean enterprise pour lequel le fichier de descripteur de d\u00e9ploiement est introuvable : {0}
io_ex_reading_dd_EXC_=IWAE0045E Une exception d''E-S s''est produite lors de la lecture de {0}
ser_not_dd_EXC_=IWAE0046E L''objet s\u00e9rialis\u00e9 dans le fichier "{0}" n''est pas une instance de javax.ejb.deployment.DeploymentDescriptor
reading_dd_EXC_=IWAE0047E Une exception s''est produite lors de la lecture de {0}
missing_class_EXC_=IWAE0048E Impossible de d\u00e9s\u00e9rialiser {0} car une classe requise est introuvable.  Exception : {1}
Converted=Converti
Stack_trace_of_nested_exce_EXC_=IWAE0049E Trace de pile de l'exception imbriqu\u00e9e :
IOException_occurred_while_EXC_=IWAE0050E Une exception d'E-S s'est produite lors de la copie du manifeste
Extract_destination_is_the_EXC_=IWAE0051E La destination d'extraction est identique au fichier source
Parameter_should_not_be_nu_EXC_=IWAE0052E Le param\u00e8tre ne doit pas \u00eatre null
Archive_is_not_a_valid_EJB_EXC_=IWAE0055E L'archive n'est pas un fichier JAR d'EJB (1.0) valide car aucun descripteur de d\u00e9ploiement ne peut \u00eatre trouv\u00e9 soit dans le manifeste, soit dans les entr\u00e9es poss\u00e9dant l'extension ".ser"
_The_following_files_could_EXC_=IWAE0056E les fichiers suivants ne peuvent pas \u00eatre charg\u00e9s :
FixPrimKeyCommand_failed_-_EXC_=IWAE0057E Echec de FixPrimKeyCommand ; trace de pile de l'exception :
FixPrimKeyCommand_usage___=Syntaxe de FixPrimKeyCommand :  <cheminFichierJarSource> [cheminDestination]
FixPrimKeyCommand_usage__s_EXC_=IWAE0058E Syntaxe de FixPrimKeyCommand : sourceJarFilePath doit d\u00e9signer un fichier JAR d'EJB valide ou un r\u00e9pertoire contenant un fichier JAR d'EJB d\u00e9compress\u00e9
Repair_command_failed_-_ex_EXC_=IWAE0059E Echec de la commande de r\u00e9paration ; trace de pile de l'exception :
Repairs_all_entries_in_the=R\u00e9pare toutes les entr\u00e9es dans les r\u00e9pertoires META-INF et/ou WEB-INF afin de leur redonner la combinaison majuscules/minuscules correcte
RepairArchiveCommand_usage=Syntaxe de RepairArchiveCommand :  <cheminFichierJarSource> <cheminDestination>
RepairArchiveCommand_usage1_ERROR_=IWAE0060E Syntaxe de RepairArchiveCommand : sourceJarFilePath doit d\u00e9signer une archive valide ou un r\u00e9pertoire contenant une archive d\u00e9compress\u00e9e
Application_Client_Jar_Fil=Fichier JAR de client d'application
EAR_File=Fichier EAR
EJB_Jar_File=Fichier JAR d'EJB
RAR_File=Fichier RAR
WAR_File=Fichier WAR
Error_occurred_iterating_f_EXC_=IWAE0061E Une erreur est survenue lors de l'it\u00e9ration des fichiers
End_of_list_reached_EXC_=IWAE0062E Fin de liste atteinte
Internal_Error__Iterator_o_EXC_=IWAE0063E Erreur interne : it\u00e9rateur d\u00e9synchronis\u00e9 par rapport aux entr\u00e9es des fichiers zip
Error_iterating_the_archiv_EXC_=IWAE0064E Erreur lors de l'it\u00e9ration de l'archive
Absolute_path_unknown_EXC_=IWAE0065E Chemin absolu inconnu
Original_archive_is_not_a__EXC_=IWAE0066E L'archive d'origine n'est pas un r\u00e9pertoire
Null_uri_EXC_=IWAE0067E Uri ind\u00e9finie
Module_file=Fichier du module
A_WAR_file=Fichier WAR
An_EJB_JAR_file=Fichier JAR d'EJB
An_Application_Client_JAR_file=Fichier JAR de client d'application
A_RAR_file=Fichier RAR
A_Application_file=Fichier d'application
A_file_does_not_exist_for_module=Aucun fichier n''existe pour l''\u00e9l\u00e9ment de module dont l''URI est : {0}
File_not_correct_type=Le fichier {0} du fichier EAR {1} n''est pas de type correct par rapport au descripteur de d\u00e9ploiement de l''application.  Type attendu : {2}" ;
Module_not_in_EAR=Le module ne se trouve pas dans un fichier EAR : {0}
Module_file_does_not_exist_2=Le fichier de module n''existe pas pour la r\u00e9f\u00e9rence de module.  Module = {0}
FileImpl._Error_0=Confinement r\u00e9cursif non autoris\u00e9 pour
